将值检索为列

时间:2015-06-22 09:27:31

标签: mysql sql

我的PHPMYADMIN中有以下表格

enter image description here

所需的输出是

  

标题 展示次数 点击次数

     

买一个新的   苹果手机   1 1

     

购买新的Android手机1   1

我尝试了以下SQL查询,但它不起作用:

SELECT headline, count(distinct(tracking_type)) FROM `tracking`

如何使用CASE声明进行操作。

感谢。

2 个答案:

答案 0 :(得分:2)

如果修复了类型(只是IMPRESSION和CLICK),您可以使用如下查询:

SELECT
  headline,
  SUM(tracking_type='IMPRESSION') AS impressions,
  SUM(tracking_type='CLICK') AS clicks
FROM
  tracking
GROUP BY
  headline

答案 1 :(得分:0)

  

如何使用CASE语句。

与@ fthiella的答案相同,但CASE声明。

SELECT headline,
       SUM(CASE WHEN tracking_type='IMPRESSION' THEN 1 ELSE 0 END) AS impressions,
       SUM(CASE WHEN tracking_type='CLICK' THEN 1 ELSE 0 END) AS clicks
FROM tracking
GROUP BY headline