2012-07-10 44 views
52

tôi cần phải làm điều nàyMySQL WHERE: cách viết "! =" Hoặc "không bằng"?

DELETE FROM konta WHERE taken != '' 

Nhưng! = Không tồn tại trong mysql. Bất cứ ai cũng biết cách làm điều này?

+1

@DanielKamilKozar Tôi không biết rằng tôi phải cấu hình cá nhân trước khi trả lời câu hỏi. – Kermit

Trả lời

23

Chắc chắn nhất là != operator! Nó là bí danh cho toán tử tiêu chuẩn <>.

Có lẽ các trường của bạn không thực sự trống, nhưng thay vào đó là NULL?

Để so sánh với NULL bạn có thể sử dụng IS NULL hoặc IS NOT NULL hoặc null safe equals operator <=>.

+0

Eh, tôi có thể thấy nơi 'NULL' đang đi (+1), nhưng nó có vẻ kỳ quặc muốn xóa * không trống rỗng hoặc NULL .. –

+1

@pst: Hmm ... điểm tốt. Câu hỏi không rõ ràng! –

7

Bạn có thể sử dụng phiên bản cũ của Mysql nhưng chắc chắn bạn có thể sử dụng

DELETE FROM konta WHERE taken <> '' 

Nhưng có rất nhiều lựa chọn khác có sẵn. Bạn có thể thử những nội dung sau đây

DELETE * from konta WHERE strcmp(taken, '') <> 0; 

DELETE * from konta where NOT (taken = ''); 
Các vấn đề liên quan