[英]how to sort a word within a sting sorted alphabetic order using sql
[英]Using SQL, How to “rename” integers with alphabetic values?
我有一個要求,在加入表格后,我需要系統用它們的描述重命名某些數值
例如:
當我執行以下查詢時:
select * from order_type 結果如下:
訂單名稱 | order_Type | 日期 |
---|---|---|
A1 | 1 | 2021 年 1 月 12 日 |
A2 | 1 | 2021 年 1 月 12 日 |
B3 | 2 | 2021 年 1 月 5 日 |
B5 | 1 | 2021 年 1 月 4 日 |
C7 | 2 | 2020 年 12 月 29 日 |
不幸的是,系統的設計方式訂單類型沒有描述符。 所以有什么辦法可以說
Order_Type 值 '1' = Make....... Order_Type 值 '2' = 購買
因此,當有人再次運行查詢時,他們會看到以下內容:
select * from order_type 結果如下:
訂單名稱 | order_Type | 日期 |
---|---|---|
A1 | 制作 | 2021 年 1 月 12 日 |
A2 | 制作 | 2021 年 1 月 12 日 |
B3 | 買 | 2021 年 1 月 5 日 |
B5 | 制作 | 2021 年 1 月 4 日 |
C7 | 買 | 2020 年 12 月 29 日 |
謝謝
您可以使用case
表達式:
select ot.*,
(case when order_type = 1 then 'Make'
when order_type = 2 then 'Buy'
end) as description
from order_type ot;
也就是說,您應該有一個包含此信息的參考表,以便您可以使用帶有規范名稱的join
。 為每個可能需要它的查詢定義它是數據不一致的秘訣。
使用CASE
表達式:
SELECT
OrderName,
CASE order_Type WHEN 1 THEN 'Make' WHEN 2 THEN 'Buy' END AS order_Type,
Date
FROM order_type;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.