ホームページ >データベース >mysql チュートリアル >SQL キーワードが実行される順序は何ですか?
SQL キーワードが実行される順序は、最初に from ステートメントを実行し、次に where ステートメント、group by ステートメント、次に Hasting ステートメント、最後に order by ステートメントを実行します。
#【おすすめコース: MySQL チュートリアル #】
sql キーワードの実行順序
#例:select m.* from(select t.*,rownum r from (select id,name,e.username,e.realname from departments d ,employees e where d.manager=e.username(+) order by id desc ) t where rownum<=? ) m where r>? select m.*(select t.*,t.rownum r from( select a,b,c,d from table1 order by a desc ) t where rownum < = ? ) m where r > ?
標準 SQL 解析順序は
# (1 ) FROM 句、さまざまなデータ ソースからデータを組み立てます (2) WHERE 句、指定した条件に基づいてレコードをフィルタリングします (3) GROUP BY 句、結合します データを複数のグループに分割します(4) 集計関数を使用して計算します##(5) HAVING 句を使用してグループをフィルタリングします
##(6) すべての式を計算します(7) 使用しますORDER BY で結果セットを並べ替えます。
例
生徒の成績テーブル (暫定的に tb_Grade) で、「候補者名」の内容が一致しないレコードをグループ化します。 「候補名」に従って空にし、グループ化結果をフィルタリングして、「合計スコア」が 600 ポイントを超える
を選択します。SQL ステートメントは次のとおりです:
select 考生姓名, max(总成绩) as max总成绩
from tb_Grade
where 考生姓名 is not null
group by 考生姓名
having max(总成绩) > 600
order by max总成绩
上記の例では、SQL ステートメントの実行順序は次のとおりです。
(4) max() 集計関数を計算し、「合計スコア」に従って合計スコアの最大値を見つけます(5) HAVING 句を実行し、合計スコアが該当するコースをフィルタリングしますは 600 ポイントを超えています。(6) ORDER BY 句を実行し、最終結果を「最大スコア」で並べ替えます。
概要: 上記がこの内容全体です。この記事が皆様のお役に立てば幸いです。
以上がSQL キーワードが実行される順序は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。