1. 비트 연산
- 비트 단위로 데이터를 조작할 수 있게 해주는 연산
1) 비트 AND 연산 (&)
- AND 연산자는 두 숫자의 각각의 비트가 모두 1일 때만 1을 반환
- 그 외에는 0을 반환
select 6 & 3
6의 이진수 표현: 0110
3의 이진수 표현: 0011
AND 연산 결과: 0010 (즉, 2)
2. 비트 OR 연산 (|)
- OR 연산자는 두 숫자의 각각의 비트 중 하나라도 1이면 1을 반환
select 6 | 3
6의 이진수 표현: 0110
3의 이진수 표현: 0011
OR 연산 결과: 0111 (즉, 7)
3. 비트 XOR 연산 (^)
- XOR 연산자는 두 숫자의 각각의 비트가 서로 다를 때만 1을 반환
- 같으면 0을 반환
select 6 ^ 3
6의 이진수 표현: 0110
3의 이진수 표현: 0011
XOR 연산 결과: 0101 (즉, 5)
4. 비트 NOT 연산 (~)
- NOT 연산자는 숫자의 모든 비트를 반전
- 1은 0으로, 0은 1로 바뀜!
select ~ 6
6의 8비트 이진수 표현: 0000 0110
NOT 연산 결과: 1111 1001 (2의 보수 표현 방식으로 -7이 됨)
* 이 방식에서 가장 왼쪽 비트(최상위 비트)는 부호 비트로 사용
- 1이면 음수, 0이면 양수를 나타냄
2. Datediff
Datediff(datepart,StartDate,Enddate)
* 대여일자 계산시 유의점!
대여기간 + 1을 해서 계산해야함!! → datediff(startdate,enddate)+1
ex) 2024-06-05에 빌려서 2024-06-06에 반납하면 날짜 차이로는 1일이지만 실제 대여기간은 2일!!
