MySQL选择子查询中仅显示1个数据的位置
我想显示表b中的所有数据。但我得到的只是一个数据,而我拥有的数据不止一个 这是表a:MySQL选择子查询中仅显示1个数据的位置,mysql,Mysql,我想显示表b中的所有数据。但我得到的只是一个数据,而我拥有的数据不止一个 这是表a: id | id_category | status ---+-------------+------- 1 + Null + 0 2 + Null + 0 3 + 59,76,55 + 1 这是表b: id | name | status ---+-------------+------- 59+ data1
id | id_category | status
---+-------------+-------
1 + Null + 0
2 + Null + 0
3 + 59,76,55 + 1
这是表b:
id | name | status
---+-------------+-------
59+ data1 + 0
76+ data2 + 0
55+ data3 + 1
以下是问题:
select name
from table_b
where id IN (
select id_category
from table_a
where status = 1
)
我刚得到的数据只是数据1。查询有什么问题吗?回答不错,但是
[DISTINCT]
应该只DISTINCT
。否则,它将由于语法错误而失效。@AkhileshMishra,但[DISTINCT]只应是DISTINCT的-我不知道它是否需要-因此我将其标记为可疑/可选。
SELECT [DISTINCT] b.id, b.name, b.status
FROM table_b b
JOIN table_a a ON FIND_IN_SET(b.id, a.id_category)