Certificate/SQL

[SQL] IS NULL, 비트연산자, INSERT INTO~ VALUE, UPDATE~SET~ WHERE, DELETE FROM~WHERE, SELECT TOP~WHERE,LIMIT

Olivia-BlackCherry 2023. 4. 12. 09:38

목차

    1. NULL

    field에 아무값도 없는 것을 NULL이라고 한다. 

    0이나 space와는 다르다. NULL은 새로운 값이 들어오기 전에잠시 비워둔 개념이라고도 볼 수 있다.

     

     

    2. IS NULL / IS NOT NULL

    값이 없는지 확인하는 구문이다.

    SELECT CustomerName, ContactName, Address
    FROM Customers
    WHERE Address IS NULL;

     

     

    3. 비트연산자 &, |, ~ 

    숫자를 2진수로 바꾸어서 비트단위에서 연산하는 것이다. 

    &는  AND 연산

    |는 OR 연산

    ~은 NOT 연산이다. 

    추가로 ^는 XOR 연산이다. 

    해당 연산은 두 값이 서로 달라야 참(1)이다. 

     

    자세한 설명은 C언어 비트연산자를 참고하길 바란다. 

    ----------->클릭

     

     

    4. INSERT INTO ~VALUE

    새로운 행을 추가한다. 

     

    1)  특정 칼럼에 NULL값이 0개 이상인 경우

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

     

    2) 모든 칼럼에 값이 부여되는 경우(NULL값 X)

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

     

     

     

    5. UPDATE ~SET~WHERE

    값을 변경한다. 

    이미 변경해버렸다면 되돌릴 수 없다.

    그렇기에 신중하게 해야한다.

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

     

    예제를 살펴보자.

    UPDATE Customers
    SET ContactName='OLIVIA', City='KOREA'
    WHERE CustomerID=1;

     

    만약 WHERE절을 생략한다면, 아래와 같이 나온다.

    UPDATE Customers
    SET ContactName='olivia', Country='South Korea';

     

     

     

    6. DELETE FROM ~WHERE

    특정 조건의 행을 지운다.

    DELETE FROM table_name WHERE condition;

    예시이다.

    DELETE FROM Customers WHERE CustomerName LIKE '%a%';

     

     

    7. SELECT TOP~FROM

    상위에 있는 행들만 가져오는 것이다. 

    TOP 3 ---> 최상위 3개의 행

    TOP 10 PERCENT ----> 최상위 10% 내의 행

    SELECT TOP 3 * FROM Customers;

     

     

     

    8. LIMIT 

    제한된 갯수만 출력한다. 

    위의 SELECT TOP과 유사한 역할이다. 

    SELECT * FROM Customers LIMIT 3;