在SQL中表中数据同一列数据根据不同条件数据显示成两列,SQL语句怎么写? 原数据

我想显示成这种样式
wllbzd_lbbh(这个是两位数)wllbzd_lbmc(这列是两位数对应的wllbzd_lbmc值)wllzd_lbbh(这个是4位数) wllbzd_lbmc(这列是4位数对应的值) wllzd_lbbh(这个是六位数)wllzd_lbmc(这个是6位数对应的值) tzl_name(这个是另一个表的数据)然后再根据查出来的六位数wllzd_lbbh的值为条件查询关联表,这样SQL应该怎么写?

第1个回答  2016-01-06
用case when,比如我的如下:
/**
*SQL 根据不同状态,显示不同列
**/
SELECT
date(t.add_time) AS add_time,
IFNULL(sum(CASE WHEN t.`status`=0 THEN trade_money END ),0) AS unsend_trade_money,
IFNULL(sum(CASE WHEN t.`status`=1 THEN trade_money END ),0) AS send_trade_money,
count(1) AS countPeople
FROM lr_red_pocket_log t
GROUP BY date(t.add_time);

你再自己根据这样的去改吧。
第2个回答  推荐于2018-05-06
看表结构
lbbh字段是指类别编号,
fjbh字段应该是上级的类别编号

但楼主的表述真的不清楚,我都不知你最后要输出神马?本回答被网友采纳
第3个回答  2012-11-03
有没有看完没蒙圈的,上来翻译一下。
相似回答