openlang

NTEXT 필드와 고정값을 형식 오류 없이 비교하기

이런 식을 써 보면

[longtext3] <> '2,048.6',

다음 오류가 나타납니다:

The data types ntext and varchar are incompatible in the not equal to operator.

열의 형식과 무관하게 비교가 똑같이 작동하면 가장 좋겠습니다. (<> 연산자는 INT와 NVARCHAR 모두에서 작동합니다).

영어에서 번역원문 보기

이어지는 대화 2

서로의 근거를 따라
  1. 고유 링크

    ntext 형식은 사용 중단 대상이고 nvarchar(max)로 대체되었습니다. 가능하다면 테이블의 열 형식을 바꾸는 게 가장 좋은 해결책입니다. 그러면 varchar 리터럴과 비교해도 문제가 없습니다.

    그게 불가능하면 비교하기 전에 값을 캐스팅해야 합니다:

    cast([longtext3] as nvarchar(max))
      <> '2,048.6'

    nvarchar 리터럴도 시도해 볼 만합니다. 비슷한 형식 문제 중 일부를 해결해 줍니다:

    cast([longtext3] as nvarchar(max))
      <> N'2,048.6'
    영어에서 번역원문 보기

같은 질문의 다른 갈래

  1. SQL 파생 테이블을 거치면 사라지는 필드

    다음 SQL 문을 실행하고 있습니다: 이런 오류가 나옵니다: #1054 - Unknown column 'shipping.post_id' in 'on clause'. 꽤 단순한 코드 같은데 제대로 작동하게 만들지 못하겠습니다.…

    답글 2최근 활동 sql
  2. D 배열에서 일치하는 항목 찾기

    연관 배열에서는 이렇게 할 수 있어요 일반 배열에서는 어떻게 하나요? 예를 들면 이런 검증식을 쓰고 싶어요

    답글 2최근 활동 d
  3. PostgreSQL 9+에서 있을 수도 있는 열 안전하게 삭제하기

    테이블의 열을 하나 삭제하고 싶습니다. 그 열이 있는지 확인하려면 어떻게 해야 하나요? https://www.postgresql.org/docs/9.2/static/sql-altertable.html, 의 설명서를 읽었지만…

    답글 2최근 활동 sql