테스트 사이트 - 개발 중인 베타 버전입니다

MySQL 연산자 ( 사칙연산, 비트연산, 논리연산 ) [퍼옮]

· 20년 전 · 16064
사칙연산

- 예 : select (((3 + 2) * 4) / (2 - 1));
- 주의 : 0 으로 나눌경우 NULL 반환한다. 연산은 BIGINT 의 결과값을 가지게 되므로 BIGINT 의 범위를 벗어나게 되면 잘못된 값을 반환한다.

비트연산

- | : 비트연산 OR 의 연산자이다.
- 예 : select 29 | 15;

- & : 비트연산 AND 의 연산자이다.
- 예 : select 29 & 15;

- << : 비트연산 OR 의 연산자이다.
- 예 : select 1 << 2;

- >> : 비트연산 OR 의 연산자이다.
- 예 : select 4 >> 2;

- BIT_COUNT(N) : 해당 값의 비트수를 반환한다.
- 예 : select BIT_COUNT(29);

- 주의 : 연산은 BIGINT 의 결과값을 가지게 되므로 BIGINT 의 범위를 벗어나게 되면 잘못된 값을 반환한다.

논리연산

- 주의 : 모든 논리연산은 1(TRUE) 또는 0(FALSE) 을 반환한다. 논리연산자는 우선순위가 높기 때문에 순서에 조심해야한다.
- 예 : select ! 1+1; 이 문장은 select (! 1) + 1; 으로 연산된다.

- ! : 논리연산 NOT 의 연산자이다. 0 이외의 모든 값은 TRUE 의 의미이다. 따라서 NOT 0 만이 1을 반환한다. 예외적으로 NOT NULL 은 NULL 을 반환한다.
- 예 : select ! (100);
select ! (1+1);
select ! 1+1;

- || : 논리연산 OR 의 연산자이다. 두개의 인자가 모두 0 또는 NULL 일 경우만 0 을 반환하고, 이외에는 1을 반환한다.
- 예 : select 1 || 0;
select 0 || 0;
select 100 || NULL;

- && : 논리연산 AND 의 연산자이다. 두개의 인자중 하나라도 0 또는 NULL 이 있을 경우 0 을 반환한다.
- 예 : select 1 && NULL;<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:27:00 MySQL에서 이동 됨]</div>

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
101
99
97
96
89
81
79
78
77
76
72
69
64
61
58
57
54
53
52
45
35
28
23
17
13
1