1.ケース後選択後の簡単な関数例
表の内容は次のとおりです。
SELECT CASE id
WHEN 2 THEN '第二条'
WHEN 3 THEN '第三条'
ELSE '其他条' END AS newid,
uname,
number,
uid FROM test_key_order;
結果は次のとおりです。
2.選択後の検索機能の例
SELECT
CASE
WHEN parent_id < 3 THEN
'<3'
WHEN parent_id >= 3
AND parent_id < 5 THEN
'>=3 && <5'
ELSE
'>=5'
END AS parent_id_new ,
parent_id ,
type_id ,
type_name
FROM
tdb_goods_types
1つと2つの要約
whenの後に2つのデータ型が存在する可能性があります。1つはcaseの後の型と一致し、もう1つはブール型です。
trueの場合はその後の値を返し、falseの場合はその後の値を返します。他にない場合は、nullが返されます。
3、行から列への場合の例
参考資料:
1。MySQLで使用する場合の詳細な説明
注:ビューの作成に加えて、[最大値]と[グループ]を取得することで、ステートメントがクエリを実行する場合の結果の重複の問題を解決することもできます。
SELECT CASE WHEN Cid = 1 THEN score ELSE 0 END AS 课程1,
CASE WHEN Cid = 2 THEN score ELSE 0 END AS 课程2,
CASE WHEN Cid = 3 THEN score ELSE 0 END AS 课程3,
Sid
FROM SC ;
上記のステートメントの実行結果は次のとおりです。
最適化されたSQLステートメントは次のとおりです。
SELECT MAX(CASE WHEN Cid = 1 THEN score ELSE 0 END) AS 课程1,
MAX(CASE WHEN Cid = 2 THEN score ELSE 0 END )AS 课程2,
MAX(CASE WHEN Cid = 3 THEN score ELSE 0 END) AS 课程3,
Sid
FROM SC GROUP BY Sid;
3.1。ビューの概念と機能
ビューは、クエリ結果によって形成される仮想テーブルです。ビューには、実際のテーブルと同じように行と列も含まれますが、データは格納されません。データを取得するには、クエリの他のテーブルに関連付けます。
上の図のビューの作成の前提は、クエリステートメント専用であるということです。いつ使用されますか?クエリ結果がされ、多くの場合、サブクエリとして使用したり、頻繁に表示されます。