홈>
현재 내 조건과 일치하는 레코드를 가져 오려고합니다.
와일드 카드 연산자를 사용하고 있지만 예상대로 레코드를 가져 오지 않습니다.
테이블에 여러 레코드가 있고 아래 쿼리를 사용하고 있습니다 :
select *
from My_table
where RegNum like '117[15-24]%'
위의 쿼리는 11715에서 11724까지의 레코드를 가져올 것으로 생각했지만 현재는 11710에서 11719까지의 레코드를 가져오고 있습니다.
%
를 알아야합니다.
와일드 카드 연산자는 한 자릿수 만 고려합니다.
와일드 카드 연산자에서 두 자리 숫자를 사용하는 다른 방법이 있습니까? 아니면 내가 찾고있는 레코드를 가져 오는 다른 솔루션이 있습니까?
- 답변 # 1
- 답변 # 2
원하는 논리는 아마도 다음을 통해 더 잘 파악할 수 있습니다 :
where left(regnum, 5) between '11715' and '11724'
일부 데이터베이스가
left()
를 지원하지는 않습니다 그 대신 부분 문자열 함수를 사용하십시오.like
를 사용하려는 논리에 오류가 있습니다. 숫자 범위의 경우. 와이즈 비즈 문자열입니다. 숫자 범위를 원하면 숫자를 사용하십시오. 위의 조건 으로이 작업을 수행 할 수 있습니다 :like
그러나 이것은 원래 문자열 비교와 논리적으로 동일합니다.
where cast(left(regnum, 5) as int) between 11715 and 11724
관련 자료
- montecarlo - Python의 Discrete Uniform Distribution을 사용하여 0-1 범위의 숫자를 1-52 범위로 변환하려면 어떻게해야합니까?
- azure sql database - 하나의 쿼리를 사용하여 두 번째 쿼리의 범위 설정
- python - 일련의 숫자가 큰 범위의 숫자 내에 있는지 확인하는 방법은 무엇입니까?
- r - 파이프 연산자와 함께 filter () 함수를 사용하여 평균과 반올림 찾기
- javascript - 가져 오기를 사용할 때 JSON에 어떻게 액세스합니까?
- javascript - 사용자가 Svelte 및 Sapper를 사용하여 버튼을 클릭하면 새 페이지를 가져옵니다
- 파이썬에서 목록을 사용하지 않고 4 개의 숫자 중 가장 큰 숫자를 찾는 방법
- awk - SED 명령을 사용하여 특정 문자열을 가져 오는 방법
- java - 배열 목록을 사용하여 소수 찾기
- Javascript를 사용하여 배열에서 이웃 숫자를 계산하는 방법은 무엇입니까?
- c# - LINQ 쿼리를 사용하여 이름이 숫자로 시작하는 제품 이름 목록을 가져 오는 방법?
- reactjs - 확산 연산자를 사용하여 React 함수에서 상태 변경 방지
- spring - JUnit 5에서 @Value를 사용하여 속성 값을 가져올 수 없습니다
- javascript - 객체 배열을 사용하여 데이터를 가져오고 표시하는 방법은 무엇입니까?
- pandas - phonenumbers Python Library를 사용하여 df의 각 행에서 모든 전화 번호를 얻는 방법은 무엇입니까?
- java - 무리한 숫자를 사용합니다 1/22140을 반환합니다 단순화 하시겠습니까?
- OpenCV 및 Python에서 범위 슬라이더 (트랙 바)를 사용하여 마스크 이미지 만들기
- pyspark - Spark Core Rddmax ()를 사용하지 않고 RDD 함수의 최대 n 개 행을 가져 오는 방법
- node.js - 공유 자바 스크립트 모듈에서 가져 오기 사용
- javascript - Fetch를 사용하여 React에서 ID가 짝수 인 각 앨범에서 첫 번째 이미지를 얻으려면 어떻게해야합니까?
관련 질문
- 페이지 매김으로 SQL 쿼리 최적화
- SQL 문으로 백분율을 계산하는 방법
- T-SQL에서 이진수 값을 확인해야합니다.
- SQL Server 데이터베이스 파일의 위치는 어디에 저장됩니까?
- T-SQL : 제외 테이블을 기반으로 값을 제외하는 결과 집합을 반환하는 방법
- MSSQL에서 order by 절에 대해 n 행을 건너 뛰는 방법
- SQL Server : 저장 프로 시저의 선택적 변수
- sql : 값을 계산하고 다른 열에 표시하려면 어떻게해야합니까?
- sql : 데이터베이스의 모든 기본 테이블에 대해 모든 열의 데이터 유형을 유니 code 데이터 유형으로 변경하는 방법
- sql : 5 초 미만의 간격이있는 경우 여러 행을 하나로 병합
SQL Server를 사용하고 있다고 추측합니다. 수치 범위를 비교할 때 가장 좋은 방법은 불평등을 사용하는 것입니다. 당신의
RegNum
경우 열은 텍스트입니다. 먼저 정수로 캐스트 한 다음 비교하십시오.LIKE
를 사용하려면 , 시도해 볼 수 있습니다 :