我有一个表,例如名为“node”,我需要从中返回值,如下所示:
SELECT nid FROM node WHERE type = "book"
在获得值列表后,我们可以这样说:
|**nid**|
|123|
|12451|
|562|
|536|
然后我需要获取这些值,并检查另一个表,以查找在一个联接请求中“path”列的值为“node/123”、“node/12451”(上一个请求返回的编号)的行。如果“路径”列有简单的数字,没有“节点/”,一切都会更容易。 然后还计算相同的数量,即返回的“node/123”。 最终结果如下:
nid | path | count(path) | count(distinct path)
123 |node/123| 412 | 123
562 |node/562| 123 | 56
如果在多个单独的查询中完成,工作正常,但不行。
最佳答案
select a.nid from node a join othertable b
on b.path = concat("node/", a.nid) where type='book'
关于Mysql多表选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1840146/