在MySQL查询中获取表的坐标(行、列)

在MySQL查询中获取表的坐标(行、列),mysql,sql,Mysql,Sql,有没有办法获得表格的(行、列)坐标 例如: tbl1: tbl2: +--------+--------+--------+ +------+-----------+---------+ | Name | ROW | COL | | ROW | COL_0 | COL_1 | +--------+--------+--------+ +------+-----------+

有没有办法获得表格的(行、列)坐标

例如:

tbl1:                              tbl2:
+--------+--------+--------+       +------+-----------+---------+
| Name   |   ROW  |   COL  |       |  ROW |  COL_0    |  COL_1  |
+--------+--------+--------+       +------+-----------+---------+
| VALUE1 |     0  |     0  |       |    0 |  OPEN     |  CLOSE  |
| VALUE2 |     2  |     1  |       |    1 |  RIGHT    |  LEFT   |
| VALUE3 |     1  |     0  |       |    2 |  OFFLINE  |  ONLINE |
+--------+--------+--------+       +------+-----------+---------+
结果应该如下所示:

+--------+----------+     
| Name   |   ROWCOL | 
+--------+----------+ 
| VALUE1 |   OPEN   | 
| VALUE2 |   ONLINE | 
| VALUE3 |   RIGHT  | 
+--------+----------+ 

提前谢谢

这是一个奇怪的要求,但我相信这会起作用:

SELECT name, 
CASE COL
  WHEN 0 THEN COL_0
  WHEN 1 THEN Col_1
END as rowcol
FROM tbl1 as t1
INNER JOIN tbl2 as t2
ON t1.ROW = t2.ROW

我认为依赖行数之类的隐式数据不是一个好主意

我建议将tbl2重组为如下内容:

create table tbl2 (
   rowid integer,
   colid integer,
   textvalue varchar(32)
);
数据看起来像

0 0 OPEN
0 1 CLOSE
1 0 RIGHT
1 1 LEFT
...
这样你就可以用

select tbl1.name as Name, tbl2.textvaluevalue as ROWCOL
from tbl1, tbl2
where tbl1.ROW = tbl2.rowid and tbl1.COL = tbl2.colid

我想你最好解释一下你想要实现什么,这听起来很奇怪。我只想构造一个MySQL查询,使用tbl1和tbl2作为输入,得到第三个表。你确定这就是你想要构建数据库的方式吗?我不想添加额外的信息,因为我认为这会让人困惑,这就是为什么我更喜欢保持简单,只写简单的表格和结果,以显示我打算做什么。我想我们需要看看你为什么要这样做。请编辑您的帖子,并添加对现实世界中需要这种方法的情况的解释。谢谢!这正是我想要的。正如我所预料的那样。