-1

如下图所示,对于记录 1 和 2,TPSL_SRNO 的值除了结尾是相同的。我如何取出有此问题的记录,因为它导致数量翻倍。

Location_code   DocType   Date        TPSL_SRNO
---  ------------------------------------------------------
020027200000404   PSL   20180830    S2421100-1-0-5
020027200000404   PSL   20180830    S2421100-1-0-5-7200000404
020027200000404   PSL   20180830    S2421300-1-100-0
020027200000404   PSL   20180830    S2421300-1-100-0-7200000404
020027200000404   PSL   20180830    S2438600-1-45-0
020027200000404   PSL   20180830    S2438600-1-45-0-7200000404

在此处输入图像描述

4

2 回答 2

0

这将向您显示在 TPSL_SRNO 列中具有长选项的所有行。

select t1.* from YOUR_TABLE t1, YOUR_TABLE t2
where t1.TPSL_SRNO != t2.TPSL_SRNO
and t1.TPSL_SRNO like concat(t2.TPSL_SRNO, '%')
于 2020-12-03T14:42:39.013 回答
0

如果没有具有相同开头的 TPSL_SRNO 的其他行 ( ),则返回一行。<>

select *
from tablename t1
where not exists (select 1 from tablename t2
                  where t1.TPSL_SRNO like concat(t2.TPSL_SRNO, '%')
                    and t1.TPSL_SRNO <> t2.TPSL_SRNO)
于 2020-12-03T14:39:11.187 回答