이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 15603|회답: 0

[출처] SQL Server 필드는 중국어 문자, 문자, 숫자만 포함할 수 있습니다

[링크 복사]
게시됨 2018. 12. 7. 오후 1:24:31 | | | |
데이터베이스에서 일부 데이터를 쿼리해야 하기 때문에, 필드 내용에는 한자, 문자, 숫자만 포함할 수 있고, 특수 기호는 포함할 수 없습니다(특수 데이터 제외).
먼저 효과들을 살펴보겠습니다. 다음과 같습니다:




리소스:

데이터베이스 SQL이 숫자와 문자 또는 한자만으로 필드를 쿼리하는 방법

- 숫자와 문자만 포함되어 있습니다

테이블 이름에서 열명을 선택하세요. 여기서 REGEXP_LIKE(열명,'^([\u4e00-\u9fa5]+)$')

--한자만 포함되어 있어

table명에서 length(column name)=length(ASCIISTR(column name))-length(replace(ASCIISTR(column name),'\',''))를 선택하세요


참고: asciistr() 함수는 문자열을 ASCII 값으로 변환하며, 해당 문자가 ASCII 코드 테이블에 있으면 해당 문자로 변환됩니다; 중국어 문자나 전폭 문자 등 없으면 \xxxx 형식으로 변환됩니다.


length() 함수는 중국어 길이가 1이며, lengthb()에 해당하는 한자가 2바이트임을 계산합니다. 위 문장은 ASCII 값으로 변환한 후 중국어 문자 수와 \ 수를 비교하기 위한 것으로, 만약 같다면 모두 한자임을 의미합니다. (전체 너비 기호의 영향을 배제하고 싶다면, 먼저 필드를 반 너비로 바꿔야 하며, 함수는 to_single_byte()입니다).



SQLserver2008R2는 비중국어 영숫자가 처음 나타나는 위치를 찾습니다

환경:
테스트 데이터베이스 sqlserver2008r2에는 Chinese_PRC_CI_AS정렬 메서드가 있는데, 다른 환경에서는 시도해보지 않았습니다
진술


반환 값: 4

내 해결책

(끝)





이전의:상품 설문지, 이 사이트를 어떻게 알았나요?
다음:자신의 게이트웨이로 개조하면, 네트워크 카드가 두 개 있을 때 내부 및 외부 네트워크가 동시에 켜집니다
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com