开发者社区> 问答> 正文

这个sql怎么写:报错

如下:取每个月内的最小price项的id     id  name    date           price             1   aaa     2016-11-4     100           2   aaa     2017-1-4       100           3   aaa     2017-1-6       90             4   aaa     2017-2-4       120           5   aaa     2017-3-4       110           6   aaa     2017-3-7       100     7   aaa     2017-1-9       90 

---

展开
收起
kun坤 2020-06-09 11:00:16 389 0
1 条回答
写回答
取消 提交回答
  • select id,min(price) as minPrice,date from 表名 group by SUBSTRING_INDEX(date,'-',2)这样就可以了######回复 @叶飞飘渺 : 我用的不是这个数据######回复 @treker : 你说的是这个select id from 表名 a join (select min(price) as minPrice,date from 表名 group by SUBSTRING_INDEX(date,'-',2)) b on a.price = b.minPrice and a.date = b.date ,我这边测试这两个的结果是一样的啊######这么写取出来的值是不对的######大哥,你以前的答案呢......这个不全呀######回复 @风翔飞 : 是 日期类型是可以这么处理,如果是varchar类型的 就要用截取的######说清楚数据库呀。有分析函数功能的非常简单,没有的吐血。######mysql的######将时间函数处理一下成年月 聚合 取出最小######。。。。。。。。。。。。######SELECT * FROM xxx a WHERE NOT EXISTS (SELECT 1 FROM xxx b WHERE DATE_FORMAT(b.date,'%Y-%m') = DATE_FORMAT(a.date,'%Y-%m') AND b.price<a.price);######SELECT id, MIN(price),date FROM (SELECT *     FROM goods     ORDER BY price ASC) tem GROUP BY DATE_FORMAT(date,'%Y-%m');

    2020-06-09 11:00:24
    赞同 展开评论 打赏
问答分类:
SQL
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
SQL Server在电子商务中的应用与实践 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载