MySQL结果集到数组以供WHERE子句使用

时间:2013-01-04 21:07:09

标签: mysql sql

我一直在努力了解它是如何工作的,到目前为止,我找到了一种解决方法,但它并不像我希望的那样好。

假设我从查询中得到一些结果集:

SELECT id FROM photos WHERE some clause

我想把结果集放在像这样的where子句中:

SELECT * FROM tags WHERE photo_id IN ( array I just received )

如何使用嵌套查询执行此操作?我试着查找子查询无济于事。加入不是我的强项,但我担心在这种情况下我会需要它们。

1 个答案:

答案 0 :(得分:2)

SELECT * FROM tags WHERE photo_id IN (SELECT id FROM photos WHERE some clause)

但这也应该有效:

SELECT tags.* FROM tags INNER JOIN photos ON (tags.photo_id=photos.id AND some clause)