2013-03-02 42 views

Trả lời

31

<> không bằng, nó giống như !=

+0

Đúng là chúng, có chức năng, giống nhau. Tuy nhiên, cách trình tối ưu hóa SQL sử dụng chúng rất khác nhau. = /! = đơn giản được đánh giá là true/false trong khi <> có nghĩa là động cơ phải xem và xem liệu giá trị có lớn hơn hay nhỏ hơn, nghĩa là chi phí hiệu năng cao hơn. Chỉ cần một cái gì đó để xem xét khi viết các truy vấn có thể tốn kém. –

+12

Tôi không tin rằng tuyên bố là chính xác, các toán tử có chức năng tương đương, <> không phải là sự kết hợp của < and > nó là một toán tử riêng biệt theo đúng nghĩa của nó, không bằng. Tại sao người tối ưu lại quan tâm nếu nó lớn hơn hoặc nhỏ hơn giá trị? tất cả nó phải kiểm tra là nó không bằng một cái gì đó. – steoleary

+3

Tôi đã chứng minh điều này trong một số thủ tục được lưu trữ mà chúng tôi có. Tất cả phụ thuộc vào các chỉ mục tồn tại trên bảng. Khi bạn sử dụng <>, tôi tin rằng động cơ quét/tìm kiếm tất cả các giá trị lớn hơn hoặc nhỏ hơn. Khi chúng ta sử dụng! =, Nó đơn giản đi cho tất cả các giá trị không bằng với những gì bạn đã định nghĩa. Chúng tôi đã thấy hiệu suất đạt được từ 30 phút đến 3 phút đối với một số thủ tục của chúng tôi tại đây. Một lần nữa, môi trường/chỉ mục của mọi người khác nhau, nhưng chúng tôi cố gắng tránh sử dụng các toán tử <> trên các cột được lập chỉ mục vì chúng không phải là SARGable. Xem: http://www.sql-server-pro.com/sql-where-clause-optimization.html –

7

Đó là "không công bằng". Tìm trong danh sách các toán tử cho cơ sở dữ liệu bạn đang sử dụng và tìm phần thích hợp (thường là "toán tử so sánh"). Ví dụ:

4

Đó là các nhà điều hành not equals. Cách sử dụng:

select * 
from table 
where foo <> 0 
2

Đó là các nhà điều hành không đồng đều, nhưng tôi sẽ phải tiết để có được câu trả lời của tôi đăng tải bởi vì tôi chưa nhập đủ ký tự được nêu ra.

1

<> có nghĩa là không bình đẳng giống như !=

0

Kiểm tra nếu các giá trị của hai toán hạng đều bình đẳng hay không, nếu giá trị không bằng nhau thì điều kiện trở thành sự thật. (a <> b) hoặc (a! = b) là đúng.

Các vấn đề liên quan