开发者社区> 问答> 正文

这个需求怎么用sql查询

我有一个表,类似这样screenshot

展开
收起
a123456678 2016-06-29 14:03:22 1446 0
1 条回答
写回答
取消 提交回答
  • 如果你确实需要 id 这个字段的话, 你必须这么写:

    select B.id, B.name, B.tag
    from 
      (select min(tag) min_tag, name 
        from table1
        group by name) A,
      table1 B
    where A.name = B.name and A.min_tag = B.tag;
    解释一下吧, 在sql标准里, 如果用了group by和聚集函数, 那么select的字段必须是 group by的字段(例子里的name)或者 聚集函数(例子里的min(tag)). 所以
    
    select id, name from table1 group by name

    在某些数据库里是会报错的(好像oracle就是?)

    2019-07-17 19:49:05
    赞同 展开评论 打赏
问答分类:
SQL
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

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