从Oracle中的不同列中查找相似数据

发布于 2024-10-15 03:17:14 字数 418 浏览 2 评论 0原文

我有两个这样的专栏。 (TC_NO 是 11 个字符,VER_NO 是 10 个字符)

TC_NO        VER_NO
19262512794  1926251279    
31124177286  1111111111
31067179194  2222222222
65617278204  6561727820
31483188084  0000000000

我想要的是,找到 VER_NO 的前 10 个字符与 TC_NO 的前 10 个字符相同。

例如,对于此表,结果应该是:

TC_NO        VER_NO
19262512794  1926251279
65617278204  6561727820

如何在 Oracle 中做到这一点?

I have two columns like this. (TC_NO is 11 character, VER_NO is 10 character)

TC_NO        VER_NO
19262512794  1926251279    
31124177286  1111111111
31067179194  2222222222
65617278204  6561727820
31483188084  0000000000

What i want is, finding VER_NO's first 10 character is the same TC_NO's first 10 characters..

For example for this table the result should be:

TC_NO        VER_NO
19262512794  1926251279
65617278204  6561727820

How can I do that in Oracle?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

山田美奈子 2024-10-22 03:17:14
select *
from MYTABLE
where substr(TC_NO,1,10) = VER_NO
select *
from MYTABLE
where substr(TC_NO,1,10) = VER_NO
自此以后,行同陌路 2024-10-22 03:17:14

假设你没有空值。

select *
from MYTABLE
where substr(TC_NO,1,10)=substr(VER_NO, 1, 10);

如果您有空值并且希望它们相等。

select *
from MYTABLE
where substr(NVL(TC_NO, '-'),1,10)=substr(NVL(VER_NO, '-'), 1, 10);

如果您有空值并且您不希望它们相等。

select *
from MYTABLE
where substr(NVL(TC_NO, '-'),1,10)=substr(NVL(VER_NO, '|'), 1, 10);

Assuming you dont have nulls.

select *
from MYTABLE
where substr(TC_NO,1,10)=substr(VER_NO, 1, 10);

If you have nulls and you want them to be equal.

select *
from MYTABLE
where substr(NVL(TC_NO, '-'),1,10)=substr(NVL(VER_NO, '-'), 1, 10);

If you have nulls and you dont want them to be equal.

select *
from MYTABLE
where substr(NVL(TC_NO, '-'),1,10)=substr(NVL(VER_NO, '|'), 1, 10);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文