我有一个查询,返回一些记录的旧版本(由于糟糕的数据库设计),我试图只获取最新的记录。因此,我尝试获取具有最大Id的记录,但查询很复杂,有很多记录。所以这样的子查询不起作用:
SELECT row
FROM table
WHERE id=(
SELECT max(id) FROM table
)
以下是我的问题。顺便说一下,我的公司正在使用Testlink,如果您熟悉它并且对此有更好的解决方案,将不胜感激。
SELECT req_doc_id, scope,nh.parent_id,nh.id
FROM (SELECT nh.id, req_doc_id,doc_id FROM nodes_hierarchy nh,
req_specs r1, requirements r2
WHERE nh.parent_id = r1.id AND nh.id = r2.id
AND (r1.doc_id LIKE '%BlaBla%' OR r1.doc_id LIKE '%Tralala%'))
AS t1, nodes_hierarchy nh, req_versions r1
WHERE t1.id = nh.parent_id AND nh.id = r1.id
结果集如下:
NAME..................ID
____
BlaBla1..............163
BlaBla1..............190
BlaBla2..............173
Tralala..............15
Tralala2.............26
Tralala2.............19
What I want is:
NAME..................ID
____
BlaBla1..............190
BlaBla2..............173
Tralala..............15
Tralala2.............26