求教:每个分类各取10条数据,相同时间上的数据显示在一条记录上,这样的SELECT语句怎么写?
数据库mysql表如下:
表名:stockdata
ID TIME STOCK_NAME DATA1 DATA2 DATA3
1 9:30 银行 aaa bbb ccc
2 9:31 银行 ddd eee fff
.. …… … …. …. ….
11 9:30 证券 2aaa 2bbb 2ccc
12 9:31 证券 2ddd 2eee 2fff
.. …. …. …. …. ….
我想要的结果是:按STOCK_NAME这个字段个都取出最新的10条信息。每条记录包含在这个时间上的所有STOCK_NAME的三个数据都展示在一条记录上。请问怎么写。
银行 证券
TIME DATA1 DATA2 DATA3 DATA1 DATA2 DATA3
9:31 ddd eee fff 2ddd 2eee 2fff
9: 30 aaa bbb ccc 2aaa 2bbb 2ccc
… … … … … … …
查询出来的表就是按这样的以时间排序,一条记录上显示每个分类的相同的字段名(DATA1 ,DATA2,DATA3)的数据。
——解决方案——————–
无环境 未测试:
SQL code
select id, stock_code, real_time, sum(if(stock_code=991156, buycount, 0)) as buycount, sum(if(stock_code=99115