一、 背景
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),新巴爾虎左企業(yè)網(wǎng)站建設(shè),新巴爾虎左品牌網(wǎng)站建設(shè),網(wǎng)站定制,新巴爾虎左網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,新巴爾虎左網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
resc表保存了系統(tǒng)的一級、二級功能模塊,同時保存了二級功能模塊各頁面的功能,通過pid定義了父子關(guān)系。
想通過resc表,整理出一份,一級、二級功能模塊的對應(yīng)關(guān)系,類似于這樣的結(jié)果。
二、 實(shí)現(xiàn)方法
select case when PID=1 then '用戶管理' when PID=4 then '代理管理' when PID=8 then '媒體管理' when PID=21 then '報表管理' when PID=26 then '內(nèi)容管理' when PID=30 then '業(yè)績管理' when PID=34 then '財(cái)務(wù)管理' END as menu, `name`,PID from resc where pid in (select id from resc where pid=0) order by pid
執(zhí)行結(jié)果:
將執(zhí)行結(jié)果,粘貼到excel中,進(jìn)行合并單元格,即可得到預(yù)期結(jié)果,可在excel中,對功能模塊進(jìn)行跟蹤。
三、 理論
case表達(dá)式在sql中,可以實(shí)現(xiàn)if-then-else的邏輯。
有兩種類型的case表達(dá)式:
簡單case表達(dá)式,使用表達(dá)式確定返回值;
搜索case表達(dá)式,使用條件確定返回值。
使用簡單case表達(dá)式
語法:
case search_expression
when expression1 then result1
when expression2 then result2
...
when expressionN then resultN
else default_result
end
關(guān)鍵字說明:
search_expression, 待求值的表達(dá)式,數(shù)據(jù)表的某個字段;
expressionX, 是與search_expression進(jìn)行比較的表達(dá)式;
result1 ,是符合表達(dá)式時,返回的值
default_result ,是無法匹配表達(dá)式時,默認(rèn)返回值。
2. 搜索case表達(dá)式
語法:
case
when condition1 then result1
when condition2 then result2
...
when conditionN then resultN
else default_result
end
關(guān)鍵字說明:
condition, 是待求值的表達(dá)式;
result, 是返回值,condition1為真,則返回result1,以此類推。
default_result ,是無法匹配表達(dá)式時,默認(rèn)返回值。