当前位置:首页 > 开发 > 数据库 > 正文

查询某字段不重复记录的SQL语句该怎么写?

发表于: 2013-08-19   作者:BigBird2012   来源:转载   浏览次数:
摘要:    建表语句如下:     /* Navicat MySQL Data Transfer Source Host : localhost:3306 Source Database : test Target Host : localhost:3306 Target Database : test Date: 2013-08-

   建表语句如下:

   

/*
Navicat MySQL Data Transfer
Source Host     : localhost:3306
Source Database : test
Target Host     : localhost:3306
Target Database : test
Date: 2013-08-19 21:51:49
*/

SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for users
-- ----------------------------
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `age` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of users
-- ----------------------------
INSERT INTO `users` VALUES ('1', 'huanhuan', '20');
INSERT INTO `users` VALUES ('2', 'xiaoxiao', '20');
INSERT INTO `users` VALUES ('3', 'dada', '20');
INSERT INTO `users` VALUES ('4', 'xiaoxiao', '20');
INSERT INTO `users` VALUES ('5', 'jiaojiao', '20');
INSERT INTO `users` VALUES ('6', 'dada', '20');
INSERT INTO `users` VALUES ('7', 'wenwen', '20');
INSERT INTO `users` VALUES ('8', 'wenwen', '20');

    将表建完之后,我们会发现,users表的name列值重复了,那么这时候,我们想name列不重复的记录该怎么写?想一想,我们可以使用group by函数对name进行分组,将name列划分成若干个组,然后对这些组进行处理,处理的时候,我们用到having和count函数,来对name进行筛选和统计,SQL如下:

   

select name,age from users group by name having count(*) = 1;

 

查询某字段不重复记录的SQL语句该怎么写?

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
1、查找表中多余的重复记录,重复记录是根据单个字段(product_id)来判断 select * from p_category
SELECT PARSENAME(replace(MONITOR_ROOM_ID,'^' , '.'), 1) AS RoomID FROM ZY_MONITOR_ROOM 遇到以
 在有些大系统中,客户端查询非常复杂,需要显示很多字段和过滤很多条件,例如TFS中的条件过滤,或则用
<一> 有相关ID标识 一.查找重复记录 1.查找所有重复记录 Select * From 表 Where 重复字段 In
一、根据单个字段的重复 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 se
一、根据单个字段的重复 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 se
一、根据单个字段的重复 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 se
select top 10 f.Name as 'Formusername',t.Name as 'ToUsername',m.id,m.Fromuserid,m.TouserId,m.
Sybase 12.5数据库执行 alter table test01 modify username varchar(35) null alter table test01
本例效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Class
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号