포럼 에서 발생 하 는 비교적 어 려 운 sql 문제: 18 (문자 통합 정수 해석 요일)
그래서 기록 할 필요 가 있다 고 생각 합 니 다. 그러면 나중에 이런 문제 에 다시 부 딪 히 면 그 중에서 해답 의 방향 을 얻 을 수 있 습 니 다.
요일
1 = 일요일 2 = 월요일 4 = 화요일 8 = 수요일 16 = 목요일 32 = 금요일 64 = 토요일,
일요일 월요일 화요일 수요일 0010000 = 목요일 금요일 1000000 = 토요일 을 유추 해 보면 011111 은 일요일 ~ 금요일 011111 이 10 진법 63 으로 바 뀌 었 다.
사실 이 숫자 는 무슨 요일 을 대표 하 는 지 C 언어 에 서 는 매 거 진 유형 이다.
다음은 나의 방법 이다.
declare @i int
declare @v nvarchar(100)
set @i = 63 --
set @v = ''
SELECT @v = @v+ CASE WHEN @i & v1 <> 0 then ','+v2 else '' end
FROM
(
SELECT 1 v1,' ' v2 union all
SELECT 2,' ' union all
SELECT 4,' ' union all
SELECT 8,' ' union all
SELECT 16,' ' union all
SELECT 32,' ' union all
SELECT 64,' '
)t
select stuff(@v,1,1,'')
/*
, , , , ,
*/
set @i= 3
SELECT @v = @v+ CASE WHEN @i & v1 <> 0 then ','+v2 else '' end
FROM
(
SELECT 1 v1,' ' v2 union all
SELECT 2,' ' union all
SELECT 4,' ' union all
SELECT 8,' ' union all
SELECT 16,' ' union all
SELECT 32,' ' union all
SELECT 64,' '
)t
select stuff(@v,1,1,'')
/*
,
*/
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.