宝马娱乐在线112222 > 网络应用 > Mysql数据库之常用sql语句进阶与总结宝马娱乐在线

原标题:Mysql数据库之常用sql语句进阶与总结宝马娱乐在线

浏览次数:142 时间:2020-04-28

本文实例讲述了mysql实现多表关联统计的方法。分享给大家供大家参考,具体如下:

本文实例讲述了Mysql数据库之常用sql语句。分享给大家供大家参考,具体如下:

需求:

前面讲述了Mysql sql基本语句。这里继续总结一下SQL语句的进阶内容。

统计每本书打赏金额,不同时间的充值数据统计,消费统计,

SQL语句进阶

设计四个表,book 书本表,orders 订单表 reward_log打赏表 consume_log 消费表 ,通过book_id与book表关联,

1.查询字段:

问题:

————查询所有字段

当关联超过两张表时导致统计时数据重复,只好用子查询查出来,子查询只能查一个字段,这里用CONCAT_WS函数将多个字段其拼接

select * from 表名;

实现:

————查询指定字段

查询代码如下

select 字段名,字段名… from 表名;
SELECTb.id,b.book_name,sum( IF ( o.create_time  0 && o.create_time  9999999999, o.price, 0 ) ) today_pay_money,sum( IF ( o.create_time  0 && o.create_time  9999999999, 1, 0 ) ) today_pay_num,sum( IF ( o.create_time  999 && o.create_time  9999, o.price, 0 ) ) yesterday_pay_money,sum( IF ( o.create_time  999 && o.create_time  9999, 1, 0 ) ) yesterday_pay_num,sum(o.price) total_pay_money,sum( IF ( o.create_time  9999 && o.create_time  99999, 1, 0 ) ) total_pay_num,( SELECT SUM( total_score ) FROM book_reward_log WHERE book_id = b.id ) total_score,( SELECT CONCAT_WS( ',', SUM( IF ( create_time  0 && create_time  998, score, 0 ) ), SUM( IF ( create_time  9999 && create_time  99998, score, 0 ) ), SUM( IF ( create_time  99999 && create_time  999998, score, 0 ) ) ) FROM book_consume_log WHERE book_id = b.id ) score FROM book_book b LEFT JOIN book_orders o ON b.id = o.bidGROUP BY b.id

————多数据表连接查询时

查询结果

select 表名.字段名,表名.字段名 … from 表名;

score 为三个消费数,以逗号隔开

————使用as给表起别名

性能分析

select 表别名.字段名 from 表名 as 表别名;

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》

————消除重复行(distinct)

希望本文所述对大家MySQL数据库计有所帮助。

select distinct 字段名 from 表名;

2.条件查询:

————比较运算符

select * from 表名 where age 18; 

————逻辑运算符

select * from 表名 where age18 and age28;

————降序

select * from 表名 order by desc;

4.聚合函数:

————总数count

select count(*) from 表名;

————最大值max

select max(age) from 表名;

————最小值min

select min(age) from 表名;

————求和sum

select sum(age) from 表名;

本文由宝马娱乐在线112222发布于网络应用,转载请注明出处:Mysql数据库之常用sql语句进阶与总结宝马娱乐在线

关键词:

上一篇:没有了

下一篇:详解MySQL8.0+常用命令