반응형

INSERT INTO


https://www.w3schools.com/sql/sql_insert.asp


INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);


를 통해 테이블에 레코드를 삽입 할 수 있다.


INSERT INTO Customers (CustomerID, CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('114', 'Cardinal','Tom B. Erichsen','Skagen 21','Stavanger','4006','Norway');


를 하면 해당하는 컬럼(필드)에 맞게 값이 들어간다.


이때 CustomerID는 유니크한 값이기에 중복되면 안되고 중복되게 값을 넣을 시 오류가 뜬다.


INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal','Tom B. Erichsen','Skagen 21','Stavanger','4006','Norway');


그리고 이런식으로 CustomerID에 어떤 영향도 미치치 않을 경우 자동으로 삽입된다. (순서대로)


INSERT INTO Customers VALUES ('120', 'Cardinal','Tom B. Erichsen','Skagen 21','Stavanger','4006','Norway');


그리고 위처럼 필드명을 적지 않아도 순차적으로 기입하면 삽입이 가능하다.

        

INSERT INTO Customers (CustomerName, City, Country)
VALUES ('Cardinal', 'Stavanger', 'Norway');


위의 방식대로 적으면 해당하는 필드에만 값이 들어가고 나머지는 null이 대입된다.



UPDATE


https://www.w3schools.com/sql/sql_update.asp


UPDATE Syntax

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;


업데이트할 테이블을 정하고 해당하는 컬럼의 value를 설정해준다. 그리고 마지막으로 업데이트 대상의 조건을 설정해주면 된다.


UPDATE Customers
SET Address='hello world', City='Seoul'
WHERE Country='UK';


Customers의 테이블에서 Country가 UK인 값의 Address와 City를 모두 변경한다.



UPDATE Customers
SET Address='hello world', City='Seoul';


이런식으로 WHERE없이 업데이트를 하면 모두다 업데이트되니 조심하자.





DELETE


https://www.w3schools.com/sql/sql_delete.asp


DELETE Syntax

DELETE FROM table_name
WHERE condition;


해당하는 테이블에서 조건에 만족하는 것들을 모두 지운다.


DELETE FROM Customers
WHERE City='Seoul' AND Country='UK'


Customers에서 City가 Seoul이고 Country가 UK인 모든 레코드를 삭제한다.


DELETE FROM table_name;

를 이용하면 모든 테이블의 레코드를 삭제할 수 있다.


DELETE FROM Products;

를 하면 Products의 모든 레코드가 삭제된다.




NULL Values


https://www.w3schools.com/sql/sql_null_values.asp


SELECT column_names
FROM table_name
WHERE column_name IS NULL;

을 하면 column_name이 NULL인 값을 추출해준다.


SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;

을 하면 column_name이 NULL이 아닌 값을 추출해준다.



INSERT INTO Customers (CustomerName, ContactName, Address, Country, PostalCode) VALUES ('A','B','C','D','E');
SELECT * FROM Customers WHERE City IS NULL;


위 두 쿼리문을 작성해보자.


그럼 방금 입력했는 것중 City를 입력하지 않았기에 NULL이 만족되어 쿼리문의 결과가 나타나게 된다.







반응형