MySQLその他のデフォルト構文
2096 ワード
CASE
CASE
WHEN 조건
THEN '반환 값'
WHEN 조건
THEN '반환 값'
ELSE 'WHEN 조건에 해당 안되는 경우 반환 값'
END
サンプルケース
例
SELECT
idx,
CASE
WHEN type = '1'
THEN '의사'
WHEN type = '2'
THEN '장군'
WHEN type = '3'
THEN '왕'
ELSE '일반인'
END AS hero_type,
name
FROM hero_collection;
結果
SUBQUERY
サブクエリは、1つのSQL文に含まれる別のSQL文です.
SELECT CustomerId, CustomerId = (SELECT CustomerId FROM customers WHERE CustomerId = 2)
FROM customers
WHERE CustomerId < 6
IN, NOT IN
INは、特定の値がサブクエリにあるかどうかをチェックします.
SELECT *
FROM customers
WHERE CustomerId IN (SELECT CustomerId FROM customers WHERE CustomerId < 10)
サブクエリは、「CustomerId」が10未満のデータを返すため、最終クエリデータの「CustomerId」も10未満である.INではなくNOT INを使用する場合、サブクエリでクエリされたレコード(10個未満)
EXISTS
EXISTSまたはNOT EXISTSは、返されるサブクエリに存在するレコードをチェックします.
クエリーするレコードがある場合は「真」(TRUE)を返し、そうでない場合は「偽」(FALSE)を返します.
SELECT EmployeeId
FROM employees e
WHERE EXISTS (
SELECT 1
FROM customers c
WHERE c.SupportRepId = e.EmployeeId
)
ORDER BY EmployeeId
サブクエリは、顧客テーブルの「SupportRepId」フィールドの値を従業員テーブルの「EmployeeId」フィールドの値と比較して、一致するレコードを取得します.FROM
FROMはサブクエリも使用できます.
SELECT *
FROM (
SELECT CustomerId
FROM customers
WHERE CustomerId < 10
)
次のように、クエリー文とサブクエリーを使用して、クエリー結果をテーブルまたはクエリーするオブジェクトとして指定できます.)
https://extbrain.tistory.com/46
Reference
この問題について(MySQLその他のデフォルト構文), 我々は、より多くの情報をここで見つけました https://velog.io/@ellie12/MySQL-추가-기본-문법テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol