SQL一次性查询一个字段不同条件下的统计结果
2017-07-10 09:07
726 查看
感谢:http://blog.csdn.net/xichenguan/article/details/51764100
需求需要同时查询位于一张表中的图片、音频、视频的数量如下:
表结构如下:
multifile 表中 multi_type字段表示资源类型 pic=图片 music=音频 video=视频
所以需要分别查询 multi_type = 'pic' , multi_type
= 'music' , multi_type
= 'video' 时的 multiitem 数量
SQL语句可以是如下:
需求需要同时查询位于一张表中的图片、音频、视频的数量如下:
表结构如下:
multifile 表中 multi_type字段表示资源类型 pic=图片 music=音频 video=视频
所以需要分别查询 multi_type = 'pic' , multi_type
= 'music' , multi_type
= 'video' 时的 multiitem 数量
SQL语句可以是如下:
SELECT IFNULL( ( SELECT COUNT(mi.multiitem_id) FROM multiitem mi JOIN multifile mf ON mi.multifile_id = mf.multifile_id WHERE mf.multi_type = 'pic' ), 0 ) AS pic_num, IFNULL( ( SELECT COUNT(mi.multiitem_id) FROM multiitem mi JOIN multifile mf ON mi.multifile_id = mf.multifile_id WHERE mf.multi_type = 'music' ), 0 ) AS music_num, IFNULL( ( SELECT COUNT(mi.multiitem_id) FROM multiitem mi JOIN multifile mf ON mi.multifile_id = mf.multifile_id WHERE mf.multi_type = 'video' ), 0 ) AS video_num
相关文章推荐
- SQL一次性查询一个字段不同条件下的统计结果
- Oracle: SQL组合不同字段作为一个查询条件
- Hibernate查询,返回new对象(注意这个新定义的类要有构造函数),使用sql带条件分页查询并且把结果显示到一个对象的集里面的解决方案
- SQL查询分组后结果中某字段按照条件相加的实现
- 在同一个sql语句中写不同条件的count数量,和查询半年的数据
- 和SQL内连接不同,SQL外连接返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外连接时)、右表(右外连接时)或两个边接表(全外连接)中的所有数据行,下面就为您详细介绍SQL外连接,
- 一个字段同时查询几个不同值的SQL
- 数据库-使用查询到的不同字段的两条SQL的结果进行筛选查询
- 【SQL】一条查询中统计同一字段不同记录值数量(频数统计)的写法
- 在同一个sql语句中,统计不同条件的Count数量
- oracle数据库查询通过一个待查询字段的值组装不同的条件
- 用一条SQL语句查询一张表得到不同条件的多个结果
- Hibernate查询之SQL查询,查询结果用new新对象的方式接受,hql查询,通过SQL查询的结果返回到一个实体中,查询不同表中内容,并将查到的不同表中的内容放到List中
- 在使用Hibernate时,因为一个查询需要更多的表连接而要使用SQL来解决性能问题。然而返回的结果集中包含了没有映射的Entity类中的表字段,在这个SQL中还有使用如何将层次关系的父子结点显示为横行
- 将SQL查询分组后获得的结果中的某字段按照条件相加
- 当查询一个列表的时候获取此列表id结果作为另一个sql的是否存在的条件处理
- Hibernate查询,返回new对象(注意这个新定义的类要有构造函数),使用sql带条件分页查询并且把结果显示到一个对象的集里面的解决方案
- sql 查询一个表信息 条件为该表一个字段大于对应(必须该表相对应的Id)另外一个表的总数
- 当只有一个输入条件的时匹配数据库表中多个字段模糊查询的SQL语句
- mysql 一个表内根据字段对应值不同查询统计总数