这是我的一些数据的示例。我正在尝试删除 QueryID 和 RoyID 与表中其他条目相同的所有额外数据,但是,我想保留至少一条记录。我不确定我能否在 ID 列上使用 min 或 max 函数,因为某些记录具有 DEMO_12345 等 ID。
ID QUERY_ID ROYALTY_ID
RTSQR1652 SQ1421 ROY25644005
RTSQR1653 SQ1421 ROY25636406
RTSQR1654 SQ1421 ROY25636557
RTSQR1655 SQ1421 ROY25636558
RTSQR1656 SQ1421 ROY25636559
RTSQR1657 SQ1421 ROY25636560
我正在考虑使用 ROWID 而不是 ID。以下查询会起作用吗?
DELETE FROM RT_SOURCE_QUERY_ROYALTIES WHERE ROWID NOT IN (
SELECT MAX(ROWID) FROM RT_SOURCE_QUERY_ROYALTIES GROUP BY ROYALTY_ID, QUERY_ID);