這與我以前發表的一篇文章非常相似:但它有點不同。所以,如果它看起來很熟悉:請原諒我的學習曲線試圖瞭解:「那麼這個案例和那個案例呢......」排除記錄非唯一字段數據
我有一個很好的小查詢工作。它查詢單 「的客戶」 表
下面是表: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)吉姆和(2)湯姆和返回
5 Oscar 622 First 5125551212
3 Steve 653 Pine 5125901977
我們同時發佈:) – dougEfresh
是的 - 正確;) –
嗯謝謝你們。我確實工作。現在我需要學會優化。在200,000條記錄上,查詢需要39秒! – JVMX