LearningJavaScript/SQL
[SQL] Getting Started
jyshimmy
2020. 12. 2. 11:09
SQL
Structured Query Language의 약자로 데이터베이스용 프로그래밍 언어인 SQL query를 데이터베이스에 보내 원하는 데이터를 뽑아올 수 있다.
지금까지는 in-memory와 file I/O를 사용해왔지만, 둘 다 한계점이 있었다.
먼저, 일반적으로 서버보다 클라이언트에 저장하게되는 in-memory의 경우, 데이터가 저장된 서버 혹은 클라이언트를 끄면 데이터가 사라지는 큰 단점이 있었다.
다음으로, 서버에 서버 파일시스템이 저장되는 file I/O의 경우, 원하는 데이터만 가져올 수가 없기때문에, 파일을 통째로 가져온 뒤, 서버에서 부담이 되는 필터링 처리가 필요했다.
따라서, 필터링 외에도 file I/O로 구현이 힘든 데이터 관리를 위해 필요한 여러 기능을 갖고 있는 데이터에 특화된 서버인, 데이터베이스가 있는 것이다.
SQL 기본 문법
Check your answers를 클릭하면 오답을 확인 할 수 있다.
오답:
키워드 | 기능 | 예 |
SELECT | 단어 그대로 데이터베이스에서 내가 선택할 데이터를 의미 | SELECT * FROM Customers; |
* | all, 전체의 의미 | 위와 동일 |
FROM | 데이터를 꺼내올 데이터베이스 테이블을 가리킴; 어디서 꺼내올지 | SELECT FirstName FROM Persons |
WHERE | SELECT * FROM Persons WHERE FirstName='Peter' | |
UPDATE | UPDATE Persons SET LastName='Nilsen' WHERE LastName='Hansen' | |
SET | 위와 동일 | |
DELETE | DELETE FROM Persons WHERE FirstName = 'Peter' | |
INSERT INTO | INSERT INTO Persons (column이름넣는 자리) VALUES ('Jimmy', 'Jackson') | |
LIKE | searches for a specified pattern (records that start with an alphabet, "a") in a column (in this case, FirstName) | SELECT * FROM Persons WHERE FirstName LIKE 'a%' |
NOT LIKE | SELECT * FROM Customers WHERE City NOT LIKE 'a%' | |
OR | ||
AND | SELECT * FROM Persons WHERE FirstName='Peter' AND LastName='Jackson' | |
NOT | SELECT * FROM Customers WHERE NOT City = 'Berlin'; | |
BETWEEN | selects values within a range | SELECT * FROM Persons WHERE LastName BETWEEN 'Hansen' AND 'Pettersen' |
DISTINCT | ||
ORDER BY | ||
DESC | SELECT * FROM Persons ORDER BY FirstName DESC | |
COUNT | gives the number of records | SELECT COUNT(*) FROM Persons |
INNER JOIN | ||
CREATE TABLE |