在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只 用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰很久,用distinct不能解决的话,我只有用二重循环查询来解决,而这样对于一个数据量非常大的站来说,无疑是会直接影响到效率的,所以浪费了我大量时间。

在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct用于返回唯一不同的值。

表A:

示例1

复制代码 代码如下:

示例2

复制代码 代码如下:

实际上是根据“name+id”来去重,distinct同时作用在了name和id上,这种方式Access和SQL Server同时支持。

示例3:统计

复制代码 代码如下:

复制代码 代码如下:

distinct语句中select显示的字段只能是distinct指定的字段,其他字段是不可能出现的。例如,假如表A有“备注”列,如果想获取distinc name,以及对应的“备注”字段,想直接通过distinct是不可能实现的。

但可以通过其他方法实现关于SQL Server将一列的多行内容拼接成一行的问题讨论

更多相关文章

  1. MySQL系列多表连接查询92及99语法示例详解教程
  2. Andorid Dialog 示例【慢慢更新】
  3. Android——Activity四种启动模式
  4. Android(安卓)PureMVC
  5. Ubunu下搭建android NDK环境
  6. 自定义SeekBar主题
  7. android SQLite数据库基本操作示例
  8. android draw bitmap 示例代码
  9. Android启动时启动Activity 的定义的位置

随机推荐

  1. Android调用系统应用程序
  2. How to import sample Android projects
  3. linux下搭建android NDK开发环境
  4. 第五章 以数据为中心—数据存取(4)
  5. android 注册页面实现
  6. 【30篇突击 android】源码统计八
  7. Android(安卓)实现简单的登陆注册功能(Sha
  8. android推送学习——google的C2DM
  9. WARNING: APP_PLATFORM android-14 is la
  10. android文章 - 收藏集 - 掘金