전에이 같은 WHERE 절을 가지고 일부 SQL 코드를 찾고 있어요 C + +에서 유래하여 실수로 두 번째 등호를 잊어서 평등을 비교하는 대신 실수로 값을 할당 할 수 있습니다.값은 변수
전 본 적이 없어요.
귀하의 의견은 무엇입니까?
전에이 같은 WHERE 절을 가지고 일부 SQL 코드를 찾고 있어요 C + +에서 유래하여 실수로 두 번째 등호를 잊어서 평등을 비교하는 대신 실수로 값을 할당 할 수 있습니다.값은 변수
전 본 적이 없어요.
귀하의 의견은 무엇입니까?
Er, C++은 SQL이 아닙니다. SQL에는 ==
이없고 WHERE
절에는 지정이 없습니다.
"모범 사례"로 분류 될지는 모르겠지만 알려진 값을 오른쪽에 배치하는 규칙이 있습니다. 그래서, 당신의 예에서와 같이 문자와 그 것이다
WHERE CCY = 'USD'
'='는이 문맥에서 대입 연산자가 아니기 때문에 C++ 추론이 적용되지 않는 SQL에서는 본 적이 없습니다. 또한 많은 C++ 프로그래머 (나를 포함해서)가이 스타일을 좋아하지 않습니다.
C++의 모범 사례는 SQL에서 모범 사례가 아닙니다. 쿼리 최적화 프로그램은 상관하지 않으므로 단지 환경 설정의 문제 일뿐입니다.하지만 내 기본 설정이나 자연스럽게 작성하지 않을 것이라고 말해야합니다.
당신은 그것을 보면 :
'USD' = CCY
은 본질적으로 동일합니다 : 그것은 가장 좋은 방법은 C++에서 을 형태소 분석, 이렇게이다
:
CCY = 'USD'
에 관해서 사람들은 실수로 대신에 값을 할당 할 수 있습니다. 두 번째 수신은 등호입니다.
글쎄, 난 이런 일이 본 적이 없다, 이것은 중요 있다면, 우리는 확실히이 곳을 본 것 모두에 의해하지 않을 경우이 대부분으로 실행되었을 것입니다.
나는 개인적으로 그런 식으로 작업을 수행하지만, 더/읽기 쉽게 내에서 수행하는 것입니다 나에게이 같이 왼쪽에 열 이름을 붙이지 않을 겁니다 SQL 쿼리.
나는 아주 드물게는 반대 방향으로 수행하고, 주어진 이유는 SQL 정말 적용 생각하지 않는다 볼 수없는 것 (지적되었다, 그것은이다 "="SQL에서,하지 "==")
그는 이것이 최선의 방법이라고 말하면 SQL 대신 C++ 소스가 아니라는 것을 증명해 줄 것을 요청합니다. 99.7 %의 SQL 코드 (개발자 코드, 다른 조직의 코드, Microsoft 도움말 파일, SQL 블로그 등)는 개발자가하는 것과는 정반대의 역할을합니다. 코드를 유지 관리하는 개발자는 좋지 않습니다.SQL에서 우리는
WHERE 'USD' = CCY
따라서 professsional는 또한 메인테이너 분명 보장하기 위해 그 방식으로 코드를 작성할 것없는 형태
WHERE CCY = 'USD'
를 볼 것으로 예상.
커뮤니티 위키이어야합니다. – SilentGhost
C++, C#, java, javascript 등의 변수를 비교할 때 이해할 수 있지만 where 절에서 변수에 값을 할당 할 수 없으므로 실제로는 중요하지 않다고 생각합니다. – Zoidberg
@Zoidberg : "if"문 등이 부울 조건 유형을 가져야하는 C#이나 Java에서는 거의 문제가되지 않습니다. 따라서 어쨌든 오타가 여전히 합법적 인 경우는 거의 없습니다. –