有如下sql
SET FOREIGN_KEY_CHECKS=0;
DROP TABLE IF EXISTS `count`;
CREATE TABLE `count` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`a1` int(11) NOT NULL,
`b1` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1;
INSERT INTO `count` VALUES ('1', '1', '1');
INSERT INTO `count` VALUES ('2', '7', '2');
INSERT INTO `count` VALUES ('3', '2', '1');
INSERT INTO `count` VALUES ('4', '6', '2');
INSERT INTO `count` VALUES ('5', '5', '3');
INSERT INTO `count` VALUES ('6', '2', '0');
INSERT INTO `count` VALUES ('7', '2', '4');希望获取a1字段值和b1字段值都不重复的记录返回的正确结果应该是id a1 b1
'5' '5' '3'
SET FOREIGN_KEY_CHECKS=0;
DROP TABLE IF EXISTS `count`;
CREATE TABLE `count` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`a1` int(11) NOT NULL,
`b1` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1;
INSERT INTO `count` VALUES ('1', '1', '1');
INSERT INTO `count` VALUES ('2', '7', '2');
INSERT INTO `count` VALUES ('3', '2', '1');
INSERT INTO `count` VALUES ('4', '6', '2');
INSERT INTO `count` VALUES ('5', '5', '3');
INSERT INTO `count` VALUES ('6', '2', '0');
INSERT INTO `count` VALUES ('7', '2', '4');希望获取a1字段值和b1字段值都不重复的记录返回的正确结果应该是id a1 b1
'5' '5' '3'
解决方案 »
- mysqldump导出乱码!
- mysql 一次扫描多次链接 机制是什么意思
- 帮忙看看这mysql的存储过程是否有问题?
- 请教高手简单的mysql语句 查询指定信息在第几条
- 把某字段的某一个值设置成该字段中最大值,应该怎么写?
- 头痛呀,我现在把文本中的内容导入到mysql数据库中,前两天还可以导,今天突然就导不进去了,希望老大指点一下
- 在postgresql里,日期前后能用 > 和 < 做比较吗?
- MYSQL连接内网连接问题(祝大家新年快乐)
- mysql中怎样获取最后加入的记录?
- mysql 在查询的结果中增加一行标记序号的伪列
- php下执行查询奇怪的问题;
- 不关闭服务情况下,给一表加字段时, 注意事项?
+----+----+----+
| id | a1 | b1 |
+----+----+----+
| 1 | 1 | 1 |
| 2 | 7 | 2 |
| 3 | 2 | 1 |
| 4 | 6 | 2 |
| 5 | 5 | 3 |
| 6 | 2 | 0 |
| 7 | 2 | 4 |
+----+----+----+
7 rows in set (0.00 sec)mysql> select * from `count` t
-> where not exists (select 1 from `count` where (a1=t.a1 or b1=t.b1) and id!=t.id);
+----+----+----+
| id | a1 | b1 |
+----+----+----+
| 5 | 5 | 3 |
+----+----+----+
1 row in set (0.00 sec)mysql>