[SQL] T-SQL 등 %의 매개 변수 % 절
SQLT-SQL 등 %의 매개 변수 % 절
나는 LIKE '% 텍스트 %'절을 사용하는 명령문을 작성하려고했지만, 나는 텍스트에 대한 매개 변수를 사용하려고 할 때 결과가 수신되지 않는 경우. 예를 들어,이 작품 :
SELECT Employee WHERE LastName LIKE '%ning%'
이것은 사용자 등 Flenning, 매닝, Ningle을 반환하지만이 문장은 않을 것 :
DECLARE @LastName varchar(max)
SET @LastName = 'ning'
SELECT Employee WHERE LastName LIKE '%@LastName%'
검색 결과가 없습니다. 어떤 제안? 미리 감사드립니다.
해결법
-
==============================
1.그것은해야한다:
그것은해야한다:
... WHERE LastName LIKE '%' + @LastName + '%';
대신에:
... WHERE LastName LIKE '%@LastName%'
-
==============================
2.기호 검색 식의 일부, 그것은 그래서 당신은 SET @LastName은 (프로그래밍 언어 나 TSQL에서 일) whereever 당신이 그것을 설정해야합니다, 당신의 VALUE의 일부가되어야합니다 - 정답은 '%'가 있기 때문에 즉,이다 행 '%'+ [UserInput 사용자] + '%'
기호 검색 식의 일부, 그것은 그래서 당신은 SET @LastName은 (프로그래밍 언어 나 TSQL에서 일) whereever 당신이 그것을 설정해야합니다, 당신의 VALUE의 일부가되어야합니다 - 정답은 '%'가 있기 때문에 즉,이다 행 '%'+ [UserInput 사용자] + '%'
또는, 당신의 예 :
DECLARE @LastName varchar(max) SET @LastName = 'ning' SELECT Employee WHERE LastName LIKE '%' + @LastName + '%'
-
==============================
3.이 하나, 사용 CONCAT을 시도 할 수 있습니다
이 하나, 사용 CONCAT을 시도 할 수 있습니다
WHERE LastName LIKE Concat('%',@LastName,'%')
from https://stackoverflow.com/questions/14237755/t-sql-and-the-where-like-parameter-clause by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 외래 키에서 참조하는 열 목록과 일치 참조 테이블에 기본 또는 후보 키가 없습니다 (0) | 2020.05.12 |
---|---|
[SQL] 현지 시간대에 저장된 UTC 시간을 변환 MySQL을 할 수 있습니까? (0) | 2020.05.12 |
[SQL] MAX와 GROUP BY를 사용하여 모든 해당 필드를 선택 (0) | 2020.05.12 |
[SQL] 오라클의 N 번째 최대 급여 (0) | 2020.05.12 |
[SQL] 치명적인 오류 : C에서 정의 함수 sqlsrv_connect 문안 () : \ XAMPP \ htdocs에 (0) | 2020.05.12 |