Id希望查找末尾带有(.XX)扩展名的记录,而这些记录没有末尾带有(.XX)扩展名的相应记录。如果可能的话,我想使用“存在”或“不存在”的解决方案,因为我很困惑为什么我的不给出输出。
输入
col_a value1.XX value1 value2.XX value3
**预期输出**
col_a value2.XX
代码
SELECT * FROM table1 as a where right (table1.[col_a],3) = ".XX" and exists( select 1 from table1 b where Left(a.[col_a], Len(a.[col_a]) - 3) = b.[col_a] )
答案 0 :(得分:0)
嗯。你
select t1.*
from table1 t1
where t1.col_a like '%.XX' and
not exists (select 1
from table1 tt1
where t1.col_a = tt1.col_a || '.XX'
);
注意:您尚未指定数据库,因此它使用ISO / ANSI标准||
进行字符串连接。您可以查看RDBM的文档以了解正确的串联技术。