MySqlの基本的なクエリ-プロセス制御機能


フロー制御機能#if関数

SELECT
    last_name,
    commission_pct,
IF
    ( commission_pct IS NULL, '没奖金,呵呵', '有奖金,嘻嘻' ) 
FROM
    employees

#case function
#従業員の給与を照会します。部門番号= 30の場合、給与は1.1倍、部門番号= 40の場合、給与は1.2倍、他の部門番号の給与は元の給与です。

SELECT salary AS '原工资',department_id,
CASE department_id
    WHEN 30 THEN
        salary*1.1
    WHEN 40 THEN
      salary*1.2
    ELSE
        salary
END AS '新工资' FROM employees

#ジョブグレード
#AD_PRES A
#ST_MAN B
#IT_PROG C
#SA_REP D
#ST_CLERK E

SELECT last_name,job_id,
CASE job_id
WHEN 'AD_PRES'  THEN 'A'
WHEN 'ST_MAN'  THEN 'B'
WHEN 'IT_PROG'  THEN 'C'
WHEN 'SA_REP'  THEN 'D'
WHEN 'ST_CLERK'  THEN 'E'
END Grade
FROM employees;

#1。システム時刻の表示(注:日付+時刻)
SELECT NOW()
#2。従業員番号、名前、給与、および給与の20%増加の結果(新しい給与)を照会し
SELECT employee_id,last_name,salary AS '原工资',salary*1.2 AS '新工资' FROM employees
ます。#3。従業員の名前を最初の文字で並べ替え、次のように記述します。あなたの名前(長さ)の長さアウト
SELECT SUBSTR(last_name,1,1) AS '首字母',LENGTH(last_name) FROM employees ORDER BY 首字母 ASC
#4。クエリを作成し、以下の結果を生成
/
<LAST_NAME>稼い<給与>毎月しかし欲求<給与
3>
ドリーム給与
王は毎月24000を稼いでいるが、72000たい

* /を

SELECT CONCAT(last_name,' earns ',salary,' monthly but wants ',salary*3)  "Dream Salary"
FROM employees;

おすすめ

転載: blog.51cto.com/14049943/2679330