作者cutekid (可爱小孩子)
看板Database
标题Re: [SQL] Oracle where条件查询不到时想显示特定值
时间Mon Dec 26 17:32:35 2022
http://sqlfiddle.com/#!4/17d792/12
create table test (
X char(1),
Y int,
Z int
);
insert into test values('A',1,11);
insert into test values('B',2,12);
insert into test values('D',4,14);
insert into test values('E',5,15);
select t1.column_value,NVL(t2.Y,0),NVL(t2.Z,0)
from table(sys.dbms_debug_vc2coll('B', 'C', 'D')) t1
left join test t2 on t1.column_value = t2.X
※ 引述《ccdodo (嘻嘻哆哆)》之铭言:
: 各位高手们好,小弟是资料库新新手
: TABLE
: ===========
: X Y Z
: A 1 11
: B 2 12
: D 4 14
: E 5 15
: ===========
: 希望查询到的结果是
: ===========
: Y Z
: 2 12
: "" "" ←指查询X=C时,显示空白,或指定值(例如0)
: 4 14
: ===========
: Google查到以下用法
: Select NVL(Y,""), NVL(Z,"") from TABLE where X IN ('B','C','D')
: 但都还是只得到
: ===========
: Y Z
: 2 12
: 4 14
: ===========
: 困扰很久,希望板上高手能指点迷津,感谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 165.225.116.188 (香港)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1672047158.A.029.html
1F:→ lab214b: 喔,已经解答,真快。 02/28 11:54