SQL 根据一个字段的一部分分组查询
生活随笔
收集整理的這篇文章主要介紹了
SQL 根据一个字段的一部分分组查询
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
背景
遇到問題:一個表中的一個字段表示行業(yè)分類(該字段是個代碼值,如10100代表大類[農(nóng)、林、牧、漁業(yè)],0101,0102,0103,0104分別代表小類[農(nóng)業(yè),林業(yè),畜牧業(yè),漁業(yè)]),現(xiàn)在需要根據(jù)行業(yè)大類分組,統(tǒng)計各行業(yè)的人數(shù)。
行業(yè)代碼表如下:
select * from gyr*****_d_hylb?
下表存儲用戶的行業(yè)代碼:
SELECT id,hydm from gy****_g**l_qzyx?
?
解決思路
此表的代碼表的前面兩位代表行業(yè)大類,所以可以根據(jù)行業(yè)代碼的前面兩位進行分組查詢。可以利用LEFT()函數(shù)或者SUBSTR()函數(shù)等(我用MYSQL)。
SELECT LEFT(hydm,2) L2_hydm,COUNT(1) from gyr****_gr**_qzyx GROUP BY LEFT(hydm,2)這樣就把用戶根據(jù)行業(yè)分組了。
結(jié)果
用戶表和代碼表關(guān)聯(lián)查詢一下,展示全面的數(shù)據(jù)效果。
SELECThy.dmmc,hy.dmid,LEFT (qz.hydm, 2) L2_hydm,COUNT(1) sum FROMgyr*****rjl_q**x qz,gyr****p_d_h*b hy WHERELEFT (qz.hydm, 2) = LEFT (hy.dmid, 2) GROUP BYLEFT (qz.hydm, 2)這樣就可以解決上面的問題啦!
?
?
?
?
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的SQL 根据一个字段的一部分分组查询的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JPG 转PDF?-- 4种在线免费工具
- 下一篇: mysql操作中 出现You can‘t