sql

sql怎么将一列数据分成多列

小亿
304
2024-03-22 10:08:58
栏目: 云计算

在 SQL 中,可以通过使用CASE语句和WHEN子句将一列数据分成多列。下面是一个示例:

假设有一个名为orders的表,其中包含order_idorder_date两列数据,现在要将order_date列按照年份、月份和日期分成三列。

SELECT 
    order_id,
    order_date,
    CASE 
        WHEN order_date IS NOT NULL THEN YEAR(order_date)
        ELSE NULL
    END AS year,
    CASE 
        WHEN order_date IS NOT NULL THEN MONTH(order_date)
        ELSE NULL
    END AS month,
    CASE 
        WHEN order_date IS NOT NULL THEN DAY(order_date)
        ELSE NULL
    END AS day
FROM orders;

在上面的示例中,使用了三个CASE语句分别将order_date列按照年份、月份和日期拆分成三列yearmonthday。如果order_date为空,则将对应的拆分列置为NULL

0
看了该问题的人还看了