我们有一个会员卡持有人数据库。我正在尝试编写一个简单的SQL查询,该查询根据客户的卡号检索其全名。但是,我特别需要按照我在中添加卡号的确切顺序将输出为。我该如何实施?

这就是我所做的。

SELECT cardnumber, first_name || ' ' || last_name FROM cardholder WHERE
cardnumber LIKE '%1111%' OR
cardnumber LIKE '%2222%' OR
cardnumber LIKE '%3333%'

我应该补充一点,我对SQL不太熟悉,我现在所知道的几乎是过去几天中对这个特定问题进行了搜索的结果。

非常感谢您的帮助。

(此外,对于将卡号作为单个文本块粘贴到代码中的一种方式,我将不胜感激,但这只是一个奖励。)

最佳答案

SELECT cardnumber, first_name || ' ' || last_name
FROM (
     SELECT cardnumber, first_name, last_name, c.OrderNo
     FROM cardholder ch, (SELECT '%1111%' cardmask, 1 OrderNo from dual
                        UNION ALL
                        SELECT '%2222%', 2 OrderNo from dual
                        UNION ALL
                        SELECT '%3333%', 3 OrderNo from dual
                        ) c
     WHERE ch.cardnumber LIKE c.cardmask
     Order by c.OrderNo
) t

关于sql - SQL查询结果将按照手动提供的值的顺序显示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6425553/

10-11 01:38