MySQLコマンド2


LIKE

SELECT *
FROM 테이블이름
WHERELIKE 패턴;
2つのワイルドカードを使用します.
「一文字の意味」
「%」:複数の文字を表します
EX)
WHERE1 LIKE '5a%' 'a'로 시작하는 모든 값
WHERE1 LIKE '%a' 'a'로 끝나는 모든 값
WHERE1 LIKE '%a%' "a"가 포함된 모든 값
WHERE1 LIKE '_a%' 두 번째 인덱스에 'a'가 있는 모든 값
WHERE1 LIKE 'a%o' 'a'로 시작해 'o'로 끝나는 모든 값

ORDER BY

ORDER BY 컬럼 (오름차순 ASC() or 내림차순 DESC() 생략시 ASC)
列でソート

DISTINCT重複除外


ex)
SELECT DISTINCT name FROM sample; 중복된 값 제거
SELECT DISTINCT COUNT(DISTINCT name) FROM sample; 중복된 값 제외한 갯수

GROUP BY


データのグループ化とクエリー(データベースに情報を要求)に使用します.
SELECT name
FROM sample
GROUP BY name
結果値はDISTINCTを指定したときの値と同じです.
指定した列の値は同じ行にグループ化されます.
SELECT name, COUNT(name)
FROM sample
GROUP BY name

HAVINGボールで条件を指定できます。


WHERE球の集約関数は使用できません.
内部処理手順:WHERE->GROUP BY->HAVING->SELECT->ORDER BY
これは、WHERE文で行を検索する処理が、ORDER BY文に行をグループ化する処理よりも先に行われるためである.
SELECT name, COUNT(name)
FROM sample
GROUP BY name
HAVING COUNT(name) =1;

サブクエリ


サブクエリはSELECTコマンドでデータをクエリします.
主にWHEREボールに使われる.
スカラー値:SELECTコマンドは、「スカラー値を返す」という1つの値のみを返します.
これは使いやすいサブクエリです.
SELECT文で列を指定し、GROUP BYではなく集約関数を使用した場合、結果は次のようになります.
これは単一の値です.
a列の最小値を削除したい場合.
DELETE FROM sample a=(SELECT MIN(a) FROM sample);

CASE

CASE 
    WHEN '조건1' THEN '반환 값1' 
    WHEN '조건2' THEN '반환 값2' 
    ELSE '해당x 반환 값'
END