自己的mysql语句积累

标签:
mysql语句积累it |
分类: mysql那些事 |
一、这个问题是在一个订单表里面 有用户的ID user_id 字段 和这个订单多少钱
money字段 如果要统计用
户的相同user_id的用户花了多少钱 并且统计出来要钱的总数来排序(最多的在最上边)。
SELECT
`user_id` ,
SUM( money )
AS `totalmoney`
FROM
`order`
WHERE
`state` = 'pay'
GROUP
BY `user_id`
HAVING
`totalmoney`
>2000
ORDER
BY `totalmoney` DESC
LIMIT
0 , 30
选出来的结果:
6186
9552.00
65571 7164.00
52240
6320.00
5869
5674.00
3055
4556.00
2306
3498.00
65578
3184.00
52029
2940.00
62502
2592.00
SELECT *
FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id)
FROM `table`))+(SELECT MIN(id) FROM `table`)) AS id) AS t2
WHERE t1.id >= t2.id
ORDER BY t1.id LIMIT 1;
SELECT u.username, u.realname, u.mobile
FROM `user` u, `order` o
WHERE o.team_id =2901
AND o.user_id = u.id
LIMIT 0 , 30
该语句和select
username,realname,mobile from
`user`
where id in(select user_id
from `order` where team_id=2901);
$year = date("Y");
$month = date("m");
$day = date("d");
$dayBegin =
mktime(0,0,0,$month,$day,$year);//当天开始时间戳
$dayEnd =
mktime(23,59,59,$month,$day,$year);//当天结束时间戳
$query = "SELECT * FROM `fanli_info` WHERE
insert_time<$dayEnd AND
insert_time>$dayBegin";
二,实现mysql的随即取数据
三 取出参加某活动的用户名 手机号(huo)
四 *
计算当天起始点和结束点时间戳 取当天的数据(或者使用FROM_UNIXTIME那个函数)
前一篇:PHP 堆排序算法