永发信息网

mysql 按某字段的一部分分组

答案:2  悬赏:20  手机版
解决时间 2021-01-27 01:14
我一个表里面有个image的字段,里面存的是图片的路径,如:/image/a/1/tupian.jpg
现在我想按图片名字来分组查出来,排除掉一些在不同文件夹重复的图片数据,即是查询的时候忽略掉前面的路径只根据图片名字来分组,这个sql语句应该怎么写,或者用php怎么写.
最佳答案
select image_file from (select substring_index(image,'/',-1) as image_file from 表) as a1 group by image_file;
全部回答
create table test_guankairi ( id int, image varchar(30) ); insert into test_guankairi select 1, ':/image/a/1/tupian.jpg' union all select 2, ':/image/a/2/tupian.jpg' union all select 3, ':/image/a/3/tupian.jpg' union all select 4, ':/image/a/4/tupian.jpg' union all select 5, ':/image/a/1/tupian5.jpg'; select -- reverse 是字符反转 -- 因为 mysql 的 instr, 只能从前向后查找。 -- 而这里需要 从后向前找第一个 / -- 因此先做字符反转。 -- instr 用于找第一个 / 的位置. -- right 用于获取字符右边的字符 right(image, instr( reverse(image), '/') ) as img, count(*) from test_guankairi group by right(image, instr( reverse(image), '/') ); +--------------+----------+ | img | count(*) | +--------------+----------+ | /tupian.jpg | 4 | | /tupian5.jpg | 1 | +--------------+----------+ 2 rows in set (0.00 sec)
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
青岛超银中学地址有知道的么?有点事想过去
玉颜职业美容怎么去啊,我要去那办事
山东省青岛第十三中学地址在哪,我要去那里办
2017-23-0650629是谁的鸽子?有成绩吗
《哈姆雷特》的作者是谁
在健身房健身了两个月了,对一个男的有好感,
问:男朋友跟我分手半个月了,把我微信拉黑了
马自达三换离合器片需要多少时间?
成语遗编断简的意思是什么啊?有知道释义的请
颈外静脉()。
一个男人应该会点什么
青岛经济技术开发区第五中学地址在哪,我要去
偏金旁加长是什么字——请告之
办公室被人行苟且之事怎样去晦气
中果园理发地址在什么地方,想过去办事
推荐资讯
求什么美保什么(名字不记得了)的资,源有大
成语鱼游濠上的意思是什么啊?有知道释义的请
功放板如何做成耳放如何接线
成语只鸡斗酒的意思是什么啊?有知道释义的请
各位用的是什么眼霜牌子?
紫薇名妆地址有知道的么?有点事想过去
为什么用油炸饺子能把饺子炸黄了,而用水煮则
颓压的意思是什么啊?知道的请说下!
宪纲的意思是什么啊?知道的请说下!
飞机怎么保持平稳
自迁西至曹妃甸快速公路最新消息
以下哪项所见与本患者情况不符A.心尖搏动向左
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?