数据如下:
id name date
1 a 11-11
2 b 11-12
3 a 11-13
4 c 11-10
5 a 11-15
6 d 10-15
7 c 11-20
8 d 12-20
9 c 10-13
10 a 10-15
要求结果如下:
id name date sum
8 d 12-20 2
6 d 10-15 2
7 c 11-20 3
4 c 11-10 3
9 c 10-13 3
5 a 11-15 4
3 a 11-13 4
1 a 11-11 4
10 a 10-15 4
2 b 11-12 1
id name date
1 a 11-11
2 b 11-12
3 a 11-13
4 c 11-10
5 a 11-15
6 d 10-15
7 c 11-20
8 d 12-20
9 c 10-13
10 a 10-15
要求结果如下:
id name date sum
8 d 12-20 2
6 d 10-15 2
7 c 11-20 3
4 c 11-10 3
9 c 10-13 3
5 a 11-15 4
3 a 11-13 4
1 a 11-11 4
10 a 10-15 4
2 b 11-12 1
解决方案 »
- mysql 如何删除重复标题
- mysql 支持分布式事务么????
- JOIN 怎么查询一个分类 和他关联的子物品查询三个 JOIN查询
- select into outfile 的效率问题?
- mysql如何取出同一部门id最大的人
- MySQL JBOSS 部分字符乱码
- 请大家进来看看俺的MYSQL是什么问题?????
- SQL语句,求大神
- sql语句:select (case when Level<0 then tableA.col where tableA.Level=tableB.Level)
- MYSQL 在网页上输入的是数字 但是进到phpmyadmin里面
- 求一sql语句
- 如何建立mysql用于存储用户所发布的信息
FROM test1
WHERE name = new_name
)sum
FROM test1
ORDER BY name
SELECT id, NAME AS name1, DATE,(SELECT COUNT(NAME) FROM tb WHERE NAME = name1) AS SUM
FROM tb
ORDER BY NAME DESC,DATE DESC;
order by (select max(date) from table1 where name=a.name)
简单描述下:比如name 的排序为 d c a b 是根据时间倒序排列,所以8 d 12-20 2排第一,再列出所有name为d的数据,最后统计name = d的数量,以此类推。。
FROM ttl a
ORDER BY FIND_IN_SET(a.`name`,'d,c,a,b'),a.`date` DESC
from (select name,count(*)as sum from ss group by name)as zhen
left join ss on zhen.name=ss.name
order by ss.name desc,sum时间不会降序排列,再请高手调试下
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
select a.id,a.name,a.date,(select count(1) from test12 b where b.name=a.name) sum from test12 a where a.id!=2 order by sum asc,date DESC ) d
union ALL
select * FROM (
select a.id,a.name,a.date,(select count(1) from test12 b where b.name=a.name) sum from test12 a where a.id=2 order by sum asc,date DESC ) e