就是group by 的時候 再一組資料中間有一條是不符合條件的,如何讓這組資料在不符合條件那里分成兩段顯示?
uj5u.com熱心網友回復:
sql陳述句為:SELECT
min(cardno) mincard,
max(cardno) maxcard,
case card_giveout_status when '0' then '未發放' when '1' then '已發放' end card_giveout_status,
case card_make_status when '0' then '未制作' when '1' then '已制作' when '2' then '制作中' end card_make_status,
card_make_batch,
DATE_FORMAT(card_add_time,'%Y-%m-%d-%T') as card_add_time,
DATE_FORMAT(card_giveout_time,'%Y-%m-%d-%T') as card_giveout_time,
DATE_FORMAT(card_make_time,'%Y-%m-%d-%T') as card_make_time
FROM
(
SELECT
card_giveout_status,
card_make_status,
card_make_batch,
cardno,
card_add_time,
card_giveout_time,
card_make_time,
cardno - (@rownum :=@rownum + 1) AS cardrn
FROM
card_base c,
(SELECT @rownum := 0) r
ORDER BY
cardno
) AS cardtype
GROUP BY
cardtype.card_make_batch,cardtype.card_make_status,cardtype.card_giveout_status,cardtype.cardrn
uj5u.com熱心網友回復:
結果為:888885000021 888885000199 未發放 未制作
888885000000 888885000000 已發放 已制作 1477541864468
888885000003 888885000003 未發放 已制作 1477541876774
888885000001 888885000002 已發放 已制作 1477541876774
888885000004 888885000006 未發放 已制作 1477548666683
888885000007 888885000008 未發放 制作中 1477548666683
888885000009 888885000009 未發放 已制作 1477548859891
888885000015 888885000015 已發放 已制作 1477548859891
888885000010 888885000020 未發放 制作中 1477548859891
uj5u.com熱心網友回復:
有沒有大神? 在線等,急~~~uj5u.com熱心網友回復:
沒懂意思。。。。建議貼出原始資料,然后貼出你想要的資料uj5u.com熱心網友回復:
原結果888885000015 888885000015 已發放 已制作 1477548859891888885000010 888885000020 未發放 制作中 1477548859891
中
888885000010 888885000014未發放 制作中 1477548859891
uj5u.com熱心網友回復:
原結果888885000015 888885000015 已發放 已制作 1477548859891
888885000010 888885000020 未發放 制作中 1477548859891
中
888885000010 888885000014 未發放 制作中 1477548859891
888885000015 888885000015 已發放 已制作 1477548859891
888885000016 888885000020 未發放 制作中 1477548859891
uj5u.com熱心網友回復:
還是沒看懂。。。你要的結果是什么樣的uj5u.com熱心網友回復:
樓主,你用 excel 畫兩個圖出來,一個表示一下原始資料,一個表示一下你想要的結果 ;uj5u.com熱心網友回復:
技術能力是一碼事,表達能力是另外一碼事uj5u.com熱心網友回復:
表達出來 大家才能對癥下藥轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/115081.html
標籤:開發
