当前位置:  数据库>mysql

使用mysql的disctinct group by查询不重复记录

    来源: 互联网  发布时间:2014-09-06

    本文导语:  有个需求,一直没有解决,在google上找了半天,给出的方案没有一个能用了,最后鬼使神差搞定了。    是这样的,假设一个表: id   f_id    value    1     2         a    2     2         b    3     5 ...

有个需求,一直没有解决,在google上找了半天,给出的方案没有一个能用了,最后鬼使神差搞定了。
   是这样的,假设一个表:

id   f_id    value   
1     2         a   
2     2         b   
3     5         c   
4     9         c   
5     9         a   
6     6         d  

id   f_id    value
1     2         a
2     2         b
3     5         c
4     9         c
5     9         a
6     6         d
   id是主键,f_id是外键,我需要获得不重复的外键f_id的数据,如果用group by 或者distinct很容易搞定


select f_id from table group by f_id
select distinct f_id from table
   但如果再想在结果中得到id值的话,不管怎么都会乱。比如我想在结果中用id进行排序,诸如”select distinct f_id, id from table order by id desc”完全白费。在google上看了大量的例子,发现需要在select中对id做手脚,让mysql知道除了f_id外,对id应该进行如何的操作。诸如Max, Min, Avg,Sun..都是可以的,于是变成以下的代码就搞定了……

select f_id, max(id) as id from table group by f_id order by id desc
   搞定,网上有个文章很接近答案,但是他没有”as id”,导致在我的mysql中执行结果有误,呵呵。

    
 
 

您可能感兴趣的文章:

  • rhel as 4.7的sendmail使用中mx记录的问题
  • 使用存储过程实现循环插入100条记录
  • Linux系统会不会把一个工作中的进程的cpu使用情况记录在文件中?
  • 请问如何使用snmp给一个表添加、修改记录?
  • 使用完ejb对象,快速释放出它占用的空间,而不删除数据库记录,是用的那条语句?
  • 用来记录登录后使用命令的shell脚本
  • 使用php记录用户通过搜索引擎进网站的关键词
  • 在Servlet中使用Jdbc-odbc连接access数据库,为什么模糊查询查不出记录啊,求救!!
  • 查询返回多条记录是不是就不能使用Entity Bean了?
  • MySql中having字句对组记录进行筛选使用说明
  • 使用SQL Server 获取插入记录后的ID(自动编号)
  • 使用SQL查询昨天、今天、明天和本周等记录的语句
  • 求一个使用tcp协议传送类似数据库表的二维数组的例子。每条记录上的字段数据类型不一定一样。
  • jquery.validate.js插件使用经验记录
  • SQL Server遍历表中记录的2种方法(使用表变量和游标)
  • 使用Linux下script工具记录Oracle输出
  • 使用distinct在mysql中查询多条不重复记录值的解决办法
  • 实现Nginx中使用PHP-FPM时记录PHP错误日志的配置方法
  • 使用mss2sql工具将SqlServer转换为Mysql全记录
  • java使用动态代理来实现AOP(日志记录)的实例代码
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • mysql的SQL_NO_CACHE(在查询时不使用缓存)和sql_cache用法
  • HBase上使用SQL查询 Phoniex
  • 问个比较菜的问题: LINUX如何查询C函数的使用方法?
  • !!Unix下如何在程序中查询出剩余磁盘空间?应该使用什么函数?
  • 在SQL中使用convert函数进行日期的查询的代码
  • linux下面如何查询某个进程正在使用的socket句柄数量
  • Oracle层次查询和with函数的使用示例
  • 在SQL Server中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名
  • 数据库查询排序使用随机排序结果示例(Oracle/MySQL/MS SQL Server)
  • c#中使用SqlDataReader查询数据库
  • 浅析一个MYSQL语法(在查询中使用count)的兼容性问题
  • 在SQL查询中使用LIKE来代替IN查询的方法
  • MySQL中使用case when 语句实现多条件查询的方法
  • sqlserver 多库查询 sp_addlinkedserver使用方法(添加链接服务器)
  • 查询优化之EXPLAIN的使用分析
  • 使用SQL Server数据库嵌套子查询的方法
  • 请问在Red Hat Linux下怎么使用find exec组合命令查询全部的shell可执行文件并删除这些文件 ?
  • 强制SQL Server执行计划使用并行提升在复杂查询语句下的性能
  • 菜鸟问题:请问如何使用UNIX命令查询系统(小型机)的硬件资源
  • MYSQL使用inner join 进行 查询/删除/修改示例
  • 使用Linq查询List中数据的代码
  • C++ I/O 成员 tellg():使用输入流读取流指针
  • 在测试memset函数的执行效率时,分为使用Cash和不使用Cash辆种方式,该如何控制是否使用缓存?
  • C++ I/O 成员 tellp():使用输出流读取流指针
  • 求ibm6000的中文使用手册 !从来没用过服务器,现在急需使用它,不知如何使用! 急!!!!!
  • Python不使用print而直接输出二进制字符串
  • 请问:在使用oracle数据库作开发时,是使用pro*c作开发好些,还是使用库函数如oci等好一些啊?或者它们有什么区别或者优缺点啊?
  • Office 2010 Module模式下使用VBA Addressof
  • 急求结果!!假设一个有两个元素的信号量集S,表示了一个磁带驱动器系统,其中进程1使用磁带机A,进程2同时使用磁带机A和B,进程3使用磁带机B。
  • windows下tinyxml.dll下载安装使用(c++解析XML库)
  • c#中SAPI使用总结——SpVoice的使用方法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3