Sql 如何从子查询中检索生成的结果
例如:Sql 如何从子查询中检索生成的结果,sql,select,Sql,Select,例如: SELECT tb1.column1, tb1.column2 FROM table1 AS tb1 WHERE tb1.column1 = (SELECT tb2.column2 FROM table2 As tb2) 但是…子查询可能有多个结果。如果有3个结果来自子查询,我如何处理它 在这个问题上使用中的 中的可以处理多个值,而=只能保存一个值 SELECT tb1.column1, tb1.column2 FROM table1 AS tb1 WHERE tb1.column1
SELECT tb1.column1, tb1.column2
FROM table1 AS tb1
WHERE tb1.column1 = (SELECT tb2.column2 FROM table2 As tb2)
但是…子查询可能有多个结果。如果有3个结果来自子查询,我如何处理它 在这个问题上使用
中的
中的可以处理多个值,而=
只能保存一个值
SELECT tb1.column1, tb1.column2
FROM table1 AS tb1
WHERE tb1.column1 IN (SELECT tb2.column2 FROM table2 As tb2)
或者另一种方法是使用JOIN
,这是一种更可取的方法
SELECT DISTINCT tb1.column1, tb1.column2
FROM table1 AS tb1
INNER JOIN table2 b
ON tb1.column1 = b.column2
在
中使用此选项
中的可以处理多个值,而=
只能保存一个值
SELECT tb1.column1, tb1.column2
FROM table1 AS tb1
WHERE tb1.column1 IN (SELECT tb2.column2 FROM table2 As tb2)
或者另一种方法是使用JOIN
,这是一种更可取的方法
SELECT DISTINCT tb1.column1, tb1.column2
FROM table1 AS tb1
INNER JOIN table2 b
ON tb1.column1 = b.column2
您需要在
中使用,而不是=
:
SELECT tb1.column1, tb1.column2
FROM table1 AS tb1
WHERE tb1.column1 in (SELECT tb2.column2 FROM table2 As tb2)
您需要在
中使用,而不是=
:
SELECT tb1.column1, tb1.column2
FROM table1 AS tb1
WHERE tb1.column1 in (SELECT tb2.column2 FROM table2 As tb2)
@user2218255你说的内部选择的2个结果是什么意思?@downvoter我不在乎你是否在没有留下任何评论的情况下对这个答案投了反对票。我想知道这有什么问题。无论如何,快乐的向下投票:)@user2218255你说的内部选择的2个结果是什么意思?@downvoter我不在乎你是否已经向下投票了这个答案而没有留下任何评论。我想知道这有什么问题。无论如何,快乐的向下投票:)@user2218255这就是为什么你在
中使用而不是=
@user2218255,这就是为什么你在
中使用而不是=
。