我正在尝试建立一个查询,以获取每个分类法术语(tid)的3个最新节点(nid)。是否可以对一个查询进行设置?

这是我的表格设置方式(不显示完整的表格信息)

taxonomy_index(保留与节点关联的分类ID)

nid      tid
1         20
1         21
1         22
2         20
2         21
3         23
3         24
4         20
4         21
5         20
5         21
5         22
5         23
6         20
6         21
6         24
7         20
7         21
8         20
8         21
9         20
9         21
9         22
9         23
.....


节点(节点信息)

nid    title           created
1      Article One     1105350260
2      Article Two     1105350259
3      Article Three   1105350261
4      Article Four    1105350280
5      Article Five    1105350290
6      Article Six     1105350290
.....


如果要查看最新的3个tid节点,我正在设想这样的结果:20、21、22:

tid     nid
20       1
20       2
20       4
21       1
21       2
21       4
22       1
22       5
22       9


一个查询有可能吗?

最佳答案

您可以尝试以下查询:

SELECT t.tid, t.nid
FROM taxonomy_index s
WHERE (SELECT COUNT(*)
  FROM taxonomy_index f
      WHERE f.tid = s.tid
  AND f.nid <= s.nid
  ) <= 3;


在这里,我使用了
10-06 14:26
查看更多