Tôi đã cung cấp cho khách hàng truy vấn sau để xóa số điện thoại trùng lặp không. các bản ghi trong một cơ sở dữ liệu MSSQL, nhưng bây giờ họ cũng cần phải làm điều đó trên MySQL, và họ báo cáo rằng MySQL phàn nàn về định dạng của truy vấn. Tôi đã bao gồm các thiết lập của một bảng thử nghiệm với các bản sao cho mẫu mã của tôi, nhưng truy vấn xóa thực tế là những gì đếm.Cách xóa Bản sao trong bảng MySQL
Tôi yêu cầu điều này trong sự thiếu hiểu biết và khẩn cấp, vì tôi vẫn bận tải xuống và cài đặt MySQL, và chỉ có thể ai đó có thể trợ giúp trong thời gian đó.
create table bkPhone
(
phoneNo nvarchar(20),
firstName nvarchar(20),
lastName nvarchar(20)
)
GO
insert bkPhone values('0783313780','Brady','Kelly')
insert bkPhone values('0845319792','Mark','Smith')
insert bkPhone values('0834976958','Bill','Jones')
insert bkPhone values('0845319792','Mark','Smith')
insert bkPhone values('0828329792','Mickey','Mouse')
insert bkPhone values('0834976958','Bill','Jones')
alter table bkPhone add phoneId int identity
delete from bkPhone
where phoneId not in
(
select min(phoneId)
from bkPhone
group by phoneNo,firstName,lastName
having count(*) >= 1
)
Có vẻ ổn với tôi. Có phải họ đang sử dụng một phiên bản MySQL hỗ trợ các truy vấn con không? –
Tại sao 'có số (*)> = 1' ?? Khi nó không bao giờ? – RichardTheKiwi