Mysql SQL中的简单数据透视表转换
我正在努力理解如何使用pivot操作符来转置一个表,但我无法理解它。任何帮助都会很好。这是我需要转换的查询Mysql SQL中的简单数据透视表转换,mysql,sql,database,sqlite,Mysql,Sql,Database,Sqlite,我正在努力理解如何使用pivot操作符来转置一个表,但我无法理解它。任何帮助都会很好。这是我需要转换的查询 SELECT sum(delayCarrier>0) AS 'Carrier Delay', sum(delayWeather>0) AS 'Weather Delay', sum(delayTraffic>0) AS 'Air Traffic Delay', sum(delaySecurity>0) AS 'Security
SELECT
sum(delayCarrier>0) AS 'Carrier Delay',
sum(delayWeather>0) AS 'Weather Delay',
sum(delayTraffic>0) AS 'Air Traffic Delay',
sum(delaySecurity>0) AS 'Security Delay'
FROM flights
这是表格版本。
我需要它读:
'TypeOfDelay','Frequency'
-------------------------
Carrier Delay | 32093
Weather Delay | 4887
Air Traffic Delay | 40730
Security Delay | 215
对不起,我知道这个问题被问了很多,我看过很多,但我似乎没有任何直觉。提前感谢。这里有一个查询,它将为您提供所需的输出,尽管我不能诚实地说它是一个支点,或者说它很漂亮
SELECT 'Carrier Delay' AS TypeOfDelay, SUM(delayCarrier > 0) AS Frequency
FROM flights
UNION ALL
SELECT 'Weather Delay' AS TypeOfDelay, SUM(delayWeather > 0) AS Frequency
FROM flights
UNION ALL
SELECT 'Air Traffic Delay' AS TypeOfDelay, SUM(delayTraffic > 0) AS Frequency
FROM flights
UNION ALL
SELECT 'Security Delay' AS TypeOfDelay, SUM(delaySecurity > 0) AS Frequency
FROM flights