我有一个带有三个clumns和三个数据记录的oracle表,如下所示
ID FIRST_NAME LAST_NAME
01 Jason Martin
02 Alison Mathews
03 Robert Black
我想按给定的ID选择第一个名字。
如果ID存在,即它是01,02和03中的值,则需要显示相应的FIRST_NAME;
如果ID不存在,则需要显示*符号。 你能帮我创建这样一个oracle SQL语句吗?
非常感谢提前。
立
答案 0 :(得分:2)
执行外连接,此示例使用id = 2:
select coalesce(FIRST_NAME, '*')
from dual
left join tablename on id = 2
答案 1 :(得分:0)
使用CASE
声明:
SELECT ID,
CASE WHEN ID IN ('01', '02', '03') THEN FIRST_NAME ELSE '*' END
FROM yourTable
注意:根据您的输入数据,我假设ID
列为VARCHAR
而不是数字,因为前导零。如果ID
是数字,则将查询更改为:
SELECT ID,
CASE WHEN ID IN (1, 2, 3) THEN FIRST_NAME ELSE '*' END
FROM yourTable