2013年7月12日

mysql 数值函数

摘要: 可使用常见的算术操作符。注意就 -、 +和 *而言, 若两个参数均为正数,则其计算结果的精确度为 BIGINT (64比特),若其中一个参数为无符号整数, 而其它参数也是整数, 则结果为无符号整数。请参见12.8节,“Cast函数和操作符”。+加号:mysql> SELECT 3+5; -> 8-减号:mysql> SELECT 3-5; -> -2-一元减号。更换参数符号。mysql> SELECT - 2; -> -2注意:若该 操作符同一个BIGINT同时使用,则返回值也是一个BIGINT。这意味着你应当尽量避免对可能产生–263的整数使用 –。... 阅读全文
posted @ 2013-07-12 15:02 danielyi 阅读(12312) 评论(0) 推荐(0) 编辑

mysql 条件统计

摘要: 问题描述为使讨论简单易懂,我将问题稍作简化,去掉诸多的背景。 从前有一个皇帝,他有50个妃子,这些妃子很没有天理的给他生了100,000个儿子,于是,皇帝很苦恼,海量的儿子很难管理,而且,他想知道每个妃子给他生了多少个儿子,从而论功行赏,这很难办。于是,皇帝请了一个程序员帮他编了一个程序,用数据库来存储所有的儿子的信息,这样就可以用程序来统计和管理啦。 数据库的结构如下:id 皇子的唯一编号mother 皇子母亲的唯一编号皇帝把妃子分成了两个等级,天宫娘娘(编号小于25)和地宫娘娘(编号大于等于25),他想知道天宫娘娘们和地宫娘娘们的生育能力孰强孰弱。于是,程序员开始写SQL Query了。 阅读全文
posted @ 2013-07-12 14:56 danielyi 阅读(484) 评论(0) 推荐(0) 编辑

mysql group_concat 使用 (按分组组合字段)

摘要: 语法: GROUP_CONCAT([DISTINCT] expr [,expr ...][ORDER BY {unsigned_integer | col_name | expr}[ASC | DESC] [,col_name ...]][SEPARATOR str_val]) 下面演示一下这个函数,先建立一个学生选课表student_courses,并填充一些测试数据。SQL代码 CREATE TABLE student_courses ( student_id INT UNSIGNED NOT NULL, courses_id INT UNSIGNED NOT NULL, KEY(stud 阅读全文
posted @ 2013-07-12 14:46 danielyi 阅读(1407) 评论(0) 推荐(0) 编辑

mysql 按时间段统计(年,季度,月,天,时)

摘要: 按年汇总,统计: select sum(mymoney) as totalmoney, count(*) as sheets from mytable group by date_format(col, '%Y'); 按月汇总,统计: select sum(mymoney) as totalmoney, count(*) as sheets from mytable group by date_format(col, '%Y-%m'); 按季度汇总,统计: select sum(mymoney) as totalmoney,count(*) as sheets 阅读全文
posted @ 2013-07-12 14:25 danielyi 阅读(21075) 评论(0) 推荐(0) 编辑