gpt4 book ai didi

mysql - 排除记录非唯一字段数据

转载 作者:行者123 更新时间:2023-11-29 04:09:11 25 4
gpt4 key购买 nike

这与我最近发表的一篇帖子非常相似:但又有点不同。因此,如果它看起来很熟悉:请原谅我试图理解的学习曲线:“这个案例怎么样,那个案例怎么样......”

我有一个很好用的小查询。它查询单个“客户”表

这是表格:SQLFiddle 在这里:http://sqlfiddle.com/#!2/1fcea

CREATE  TABLE `clients` (
`id` INT NOT NULL AUTO_INCREMENT ,
`name` VARCHAR(45) NULL ,
`address` VARCHAR(45) NULL ,
`state` VARCHAR(45) NULL ,
`foo` VARCHAR(45) NULL ,
`phone` VARCHAR(45) NULL ,
PRIMARY KEY (`id`) );

INSERT INTO`clients`
(`name`, `address`, `state`, `foo`, `phone`)
VALUES
('Jim', '123 Main', 'MO', '876', '2038221661');
INSERT INTO`clients`
(`name`, `address`, `state`, `foo`, `phone`)
VALUES
('Tom ', '234 Elm', 'MO', '433', '2038221661');
INSERT INTO`clients`
(`name`, `address`, `state`, `foo`, `phone`)
VALUES
('Steve', '653 Pine', 'CT', '863', '5125901977');
INSERT INTO`clients`
(`name`, `address`, `state`, `foo`, `phone`)
VALUES
('Dave', '654 Oak', 'NV', '872', '8769085435');
INSERT INTO`clients`
(`name`, `address`, `state`, `foo`, `phone`)
VALUES
('Oscar', '622 FIrst ', 'LA', '625', '5125551212');

这里是查询

SELECT id, 
name,
address,
phone
FROM clients
WHERE state IN ( 'MO', 'LA', 'CT' )
AND foo > 40
ORDER BY foo

它返回:

2   Tom     234 Elm     2038221661
5 Oscar 622 First 5125551212
3 Steve 653 Pine 5125901977
1 Jim 123 Main 2038221661

我想完全禁止任何没有完全唯一电话号码的记录。

我需要它抑制 (1) Jim 和 (2) Tom and Return

5   Oscar   622 First   5125551212
3 Steve 653 Pine 5125901977

最佳答案

SELECT id, 
name,
address,
phone
FROM clients
WHERE state IN ( 'MO', 'LA', 'CT' )
AND foo > 40
AND phone not in
(
select phone
from clients
group by phone
having count(*) > 1
)
ORDER BY foo

关于mysql - 排除记录非唯一字段数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17712346/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com