Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
tabel2.id中table1.table2id上的MYSQL连接_Mysql - Fatal编程技术网

tabel2.id中table1.table2id上的MYSQL连接

tabel2.id中table1.table2id上的MYSQL连接,mysql,Mysql,表1 +----+------------+ | id | table2_ids | +----+------------+ | 1 | 1,2,3 | +----+------------+ +----+------------+ | id | some_col | +----+------------+ | 1 | some_col | | 2 | some_col | | 3 | some_col | +----+------------+ 表2 +-

表1

+----+------------+
| id | table2_ids |
+----+------------+
| 1  | 1,2,3      |
+----+------------+
+----+------------+
| id | some_col   |
+----+------------+
| 1  | some_col   |
| 2  | some_col   |
| 3  | some_col   |
+----+------------+
表2

+----+------------+
| id | table2_ids |
+----+------------+
| 1  | 1,2,3      |
+----+------------+
+----+------------+
| id | some_col   |
+----+------------+
| 1  | some_col   |
| 2  | some_col   |
| 3  | some_col   |
+----+------------+
我想用
table2
获取
table1
,其中table2的id位于table1的table2\u id中 就像一篇有三张图片的帖子,帖子只有图片的id,我需要返回图片的url

我认为会是:

select * from table1 join table2 ON table2.id IN table1.table2_ids
但这是错误的


非常感谢对于这种类型的数据,您可以使用
FIND_IN_SET()
函数

select * from table1 a, tabl2 b where a.id=b.id
select * from Table1 t1 JOIN Table2 t2 WHERE FIND_IN_SET(t2.id,t1.tbl2_id)

更多信息:

在您的情况下更正确的是

select * 
from table1 
join table2 ON 
  POSITION(
    CONCAT(",", table2.id, ",") IN 
    CONCAT(",", table1.table2_ids, ",")
  ) > 0
但这样的数据库结构不好,应该将其分为3个表

表1、表2和中间表3将它们连接起来


表3将包含字段table1Id,table2Id

不以csv格式存储外键。规范化您的表如果有匹配或全部匹配,您想返回结果吗?@Jens我知道这是一个丑陋的结构,但它一直存在于大量数据中,我无法更改。请调整您的问题,以便以更具可读性和形式正确的方式呈现表的数据。另外,请更具体地说明您正在处理的数据类型。更具体的标题也可能对在其他人中发现您的问题的人有所帮助。表A有逗号分隔的值,表b有一个值。您的加入比较有效吗?虽然此代码可以回答问题,但提供有关如何和/或为什么解决问题的附加上下文将提高答案的长期价值。