gpt4 book ai didi

mysql - 用 pl/sql 中的子查询替换不匹配的值

转载 作者:行者123 更新时间:2023-11-29 02:27:44 25 4
gpt4 key购买 nike

考虑下表

Table

SELECT QUEUENAME, 
PRIORITY
FROM QUEUES
WHERE QUEUENAME IN ('Windows','Macintosh')

从上面的查询和表值来看,没有 QueueName 作为 "Macintosh"。因此,我希望每当 where 子句中没有匹配的值时,应选取具有 QueueName "Unknown" 的值及其值。

请告诉我如何实现这个查询?

我正在寻找的输出是

| QUEUENAME | PRIORITY |
|-----------|----------|
| Windows | 1 |
| Unknown | 3 |

最佳答案

已更新您正在寻找这样的东西吗?

SELECT COALESCE(q.queuename, q2.queuename) queuename,
COALESCE(q.priority, q2.priority) priority
FROM
(
SELECT 'Windows' queuename FROM dual
UNION ALL
SELECT 'Macintosh' FROM dual
) s LEFT JOIN queues q
ON s.queuename = q.queuename JOIN queues q2
ON q2.queuename = 'Unknown'

输出:

| QUEUENAME | PRIORITY ||-----------|----------||   Windows |        1 ||   Unknown |        3 |

这是 SQLFiddle 演示(甲骨文)
这是 SQLFiddle 演示(SQL Server)

关于mysql - 用 pl/sql 中的子查询替换不匹配的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18506109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com