0

是否可以在 mysql 中创建类似这样的嵌套选择语句?

SELECT * from myTable WHERE id = (SELECT id from data where dataId = 1);

如果这不是制定这种陈述的正确方法,那么任何人都可以为我指出正确的方向来制定它的方式。

谢谢

4

2 回答 2

1
SELECT * from myTable WHERE id IN (SELECT id from data where dataId = 1);
                                ^---- You should use in rather than =
于 2012-04-09T10:29:53.507 回答
0

这个语法很好。请注意,这仅在有一个 dataId 为 1 的数据时才有效。如果内部选择可能返回多个 id,那么最好使用:

SELECT * from myTable WHERE id IN (SELECT id from data where dataId = 1);
于 2012-04-09T10:30:42.070 回答