SQLite - 연산자
안녕하세요, 미래의 데이터베이스 마법사 여러분! 오늘 우리는 SQLite 연산자의 마법의 세상으로 뛰어들어 볼 거예요. 여러분의 친절한 이웃 컴퓨터 선생님이자 저는 이 여정을 안내해 드릴게요, 코드 한 줄도 적지 않은 사람들도 괜찮아요. 그러니 가상의魔杖(키보드)을 손에 들고, SQLite의 마법을 쓰러보세요!
SQLite에서 연산자는 무엇인가요?
들어가기 전에, 기본적인 것부터 시작해보겠습니다. SQLite에서 (그리고 일반 프로그래밍에서) 연산자는 특별한 기호나 키워드로, 컴퓨터가 특정 연산이나 비교를 수행하도록 지시합니다. 연산자는 데이터베이스의 언어에서 동사라고 생각해보세요 - 그들이 일어나게 합니다!
예를 들어, SQLite에서 "+" 기호를 보면, 그저 귀여운 작은 십자가가 아닙니다. 그것은 데이터베이스에게 "이 두 가지를 더해!"라고 말하고 있습니다. 마찬가지로, "="를 보면, 그저 두 개의 줄이 함께 서 있는 것이 아닙니다. "이 두 가지가 같은가?"라고 묻고 있습니다.
이제 이 점을 정리했으므로, SQLite의 다양한 유형의 연산자를 탐구해보겠습니다. 믿으세요, 그보다 더 재미있답니다!
SQLite 산술 연산자
SQLite의 산술 연산자는 학교에서 배운 기본적인 수학 연산을 데이터에 적용하는 것입니다. 이제 그들을 현장에서 보겠습니다:
연산자 | 설명 | 예제 |
---|---|---|
+ | 덧셈 | SELECT 5 + 3; -- 8을 반환합니다 |
- | 뺄셈 | SELECT 10 - 4; -- 6을 반환합니다 |
* | 곱셈 | SELECT 6 * 2; -- 12를 반환합니다 |
/ | 나눗셈 | SELECT 15 / 3; -- 5를 반환합니다 |
% | 나머지(모듈러) | SELECT 17 % 5; -- 2를 반환합니다 |
이제 몇 가지 실제 예제로 이를 설명해보겠습니다:
-- 'products'라는 테이블이 'price'와 'quantity' 열을 가정해봅시다
SELECT name, price * quantity AS total_value
FROM products;
이 예제에서, 우리는 곱셈 연산자 (*)를 사용하여 각 제품의 총 가치를 계산하고 있습니다. SQLite는 각 행에서 가격을 수량으로 곱하여 총 가치를 반환합니다.
-- 평균 가격 계산
SELECT AVG(price) AS average_price
FROM products;
-- 이제 2 소수점 자리로 둘러링합니다
SELECT ROUND(AVG(price), 2) AS rounded_average_price
FROM products;
여기서 우리는 나눗셈 연산자를 배경에서 사용하고 있습니다 (AVG 함수는 합을 개수로 나눕니다), 그리고 그 결과를 둘러링합니다. SQLite가 당신의 수학 숙제를 대신 해결하는 것처럼!
SQLite 비교 연산자
비교 연산자는 SQLite의 판단적인 친구들입니다 - 그들은 항상 것들을 비교합니다. 다음은 이 까다로운 연산자들의 표입니다:
연산자 | 설명 | 예제 |
---|---|---|
= | 같다 | SELECT * FROM products WHERE price = 10; |
!= or <> | 다르다 | SELECT * FROM products WHERE category != 'Electronics'; |
< | 작다 | SELECT * FROM products WHERE price < 50; |
> | 크다 | SELECT * FROM employees WHERE salary > 50000; |
<= | 작거나 같다 | SELECT * FROM inventory WHERE quantity <= 5; |
>= | 크거나 같다 | SELECT * FROM orders WHERE order_date >= '2023-01-01'; |
이제 이들을 현장에서 보겠습니다:
-- 재고가 없는 모든 제품 찾기
SELECT name, quantity
FROM products
WHERE quantity = 0;
-- IT 부서가 아닌 모든 직원 찾기
SELECT name, department
FROM employees
WHERE department <> 'IT';
-- 최근 일주일에 주문된 모든 주문 찾기
SELECT order_id, order_date
FROM orders
WHERE order_date >= DATE('now', '-7 days');
이 예제들에서, 우리는 비교 연산자를 사용하여 데이터를 필터링하고 있습니다. SQLite에게 "이 특정 것만 보고 싶어요, 감사합니다!"라고 말하는 것과 같습니다!
SQLite 논리 연산자
논리 연산자는 SQLite의 결정자입니다. 그들은 조건을 결합하고 더 복잡한 쿼리를 만들어줍니다. 우리의 논리 친구들을 소개합니다:
연산자 | 설명 | 예제 |
---|---|---|
AND | 모든 조건이 참이면 참 | SELECT * FROM products WHERE price > 100 AND category = 'Electronics'; |
OR | 어느 조건이든 참이면 참 | SELECT * FROM customers WHERE country = 'USA' OR country = 'Canada'; |
NOT | 조건을 부정 | SELECT * FROM employees WHERE NOT department = 'Sales'; |
이제 이들을 실제로 사용해보겠습니다:
-- 고가의 전자 제품 찾기
SELECT name, price, category
FROM products
WHERE price > 500 AND category = 'Electronics';
-- 북미의 모든 고객 찾기
SELECT name, country
FROM customers
WHERE country = 'USA' OR country = 'Canada' OR country = 'Mexico';
-- Sales 또는 Marketing 부서가 아닌 모든 직원 찾기
SELECT name, department
FROM employees
WHERE NOT (department = 'Sales' OR department = 'Marketing');
이 예제들에서, 우리는 조건을 결합하여 정확히 원하는 데이터를 얻고 있습니다. 이는 형사가 단서를 조각조각 맞추어 미스터리를 해결하는 것과 같습니다!
SQLite 비트 연산자
이제 우리는 이진 마법의 세상으로 들어가 비트 연산자를 탐구해보겠습니다. 이 연산자들은 숫자의 이진 표현을 다루며, 일상적인 SQLite 쿼리에서는 자주 사용되지 않지만, 특정 연산에 강력한 도구입니다.
연산자 | 설명 | 예제 |
---|---|---|
& | 비트 AND | SELECT 5 & 3; -- 1을 반환합니다 |
| | 비트 OR | SELECT 5 | 3; -- 7을 반환합니다 |
~ | 비트 NOT | SELECT ~5; -- -6을 반환합니다 |
<< | 왼쪽 이동 | SELECT 5 << 1; -- 10을 반환합니다 |
>> | 오른쪽 이동 | SELECT 5 >> 1; -- 2를 반환합니다 |
이제 비트 연산의 예제를 하나 봅시다:
-- 수가 홀수인지 짝수인지 확인
SELECT
number,
CASE
WHEN number & 1 = 1 THEN 'Odd'
ELSE 'Even'
END AS parity
FROM (
SELECT 1 AS number
UNION ALL SELECT 2
UNION ALL SELECT 3
UNION ALL SELECT 4
UNION ALL SELECT 5
);
이 예제에서, 우리는 비트 AND 연산자를 사용하여 수가 홀수인지 짝수인지 확인하고 있습니다. 수 AND 1이 1이면 홀수이고, 그렇지 않으면 짝수입니다. SQLite가 손가락으로 세는 것처럼!
그리고 여러분, 이제 우리는 SQLite 연산자의 세상을 여행했습니다. 산술에서 비트 연산자까지, 익숙한 영역에서 이국적인 영역까지. 연습이 완벽을 만드는 것을 기억하세요, 그러니 자신의 쿼리에서 이 연산자들을 실험해보지 마세요. 얼마 지나지 않아 진정한 데이터베이스 마법사가 될 것입니다!
Credits: Image by storyset