MySQL에서 올바른 연산자 또는 선호하지 않는 연산자 사용
두 가지(의미론적으로 동등한) 방법 중 어느 것이 불평등을 테스트하는 것이 더 좋습니까?
'foo' != 'bar'
(표기 부호 및 등호)'foo' <> 'bar'
(쉐브론 기호를 합친 것보다 작거나 큼)
MySQL 문서는 그들 사이에 아무런 차이가 없다는 것을 분명히 보여주고 있지만, 어떤 사람들은 그것을 어떻게든 하는 것에만 집착하는 것처럼 보입니다.아마도 이것은 또 다른 무의미한 vi 대 emacs 논쟁일 수도 있지만 다른 사람들이 당신의 코드(그리고 따라서 당신의 질문)를 읽을 때, 일정한 일관성을 유지하는 것이 유용합니다.
<>
와 많이 닮았습니다.<=>
이것은 매우 잘 사용되지 않는 연산자이지만 두 가지가 거의 반대이기 때문에 한눈에 혼동을 일으킬 수 있습니다(명백한 것은 제외).NULL
경우).
<< 고객명 >>은 sql 표준과 일치하고 기술적으로 더 휴대성이 뛰어나기 때문에 모든 것이 동일한 것이 선호되어야 합니다.
비표준이지만 대부분의 DB는 이를 구현합니다.
sql:2008 문법:
<not equals operator> ::=
<>
당연한 일입니다.
! 캐릭터는 미국 키보드의 노스웨스트 코너에 있습니다.
마이크로소프트 본사는 미국의 노스웨스트 코너에 있습니다.
그렇게.<>
Microsoft에 대한 승인입니다.
!=
는 Microsoft에 대한 거부입니다.
그건 비밀 정치 코드야.
<< 고객명 >>은 SQL-92 표준의 유일한 제품입니다.
DBA는 일반적으로 << 고객명 >>과 같고 프로그래머는 !=을 좋아합니다.그냥 관찰일 뿐이에요 :-)
그들은 똑같습니다, 그것은 순전히 선호하는 것입니다.
이것은 당신에게 좋은 아이디어를 줄 것입니다.
(동일하지 않음) 동일하지 않음 (SQL-92 표준 아님)
<> (동일하지 않음) 동일하지 않음
그<>
연산자는 SQL 표준에 있는 연산자이므로 SQL을 알고 있는 대부분의 사람들은 SQL 표준에 익숙하거나 최소한 알고 있을 것입니다.나 자신도 그것에 대해 알지 못했습니다.!=
연산자는 또한 최근까지 일부 SQL 방언에서도 사용할 수 있었습니다.
아시다시피, 사람들은 하나 또는 다른 하나만 사용하는 경향이 있으며, 이것은 적어도 프로젝트별로 접근하는 좋은 방법입니다.어느 쪽을 선택하든 일관성을 유지해야 합니다.
언급URL : https://stackoverflow.com/questions/2066987/using-the-correct-or-preferable-not-equal-operator-in-mysql
'programing' 카테고리의 다른 글
정렬된 배열에서 O(n) 시간에 홀수 번 발생하는 숫자를 어떻게 찾을 수 있습니까? (0) | 2023.09.05 |
---|---|
MariaDB 10.2 mysql_install_db가 중단됨 (0) | 2023.09.05 |
첫 페이지 로드 후 한 번 페이지 새로 고침 (0) | 2023.09.05 |
기본 구성과 같은 작성자가 없습니다. 개체 값에서 직렬화할 수 없습니다(위임자 또는 속성 기반 작성자 없음). (0) | 2023.09.05 |
Android Studio 편집기에서 RecyclerView 콘텐츠의 미리 보기를 표시하는 방법이 있습니까? (0) | 2023.09.05 |