PHP+study

こちら

SELECT

  • STRAIGHT_JOIN(FROM 節に指定された順序で強制的にテーブルを結合させることができる。)
  • SQL_SMALL_RESULT(MySQL 固有。GROUP BY または DISTINCT とともに使用することで、結果セットが小さいものになることをオプティマイザに通知できる。この場合、ソートを行う代わりに、迅速な一時テーブルを使用して結果のテーブルが格納される。)
  • SQL_BIG_RESULT(GROUP BY または DISTINCT とともに使用することができ、それによって、結果セットに多くのレコードが組み込まれることをオプティマイザに通知できる。この場合、MySQL で、ディスクベースの一時テーブルが必要に応じて直接使用される)
  • SQL_BUFFER_RESULT(結果が一時テーブルに強制的に格納される。結果セットをクライアントに送るのに時間がかかる場合には、このオプションを指定することによって、MySQL によるテーブルのロックを早く解放させることができる)
  • SQL_CACHE | SQL_NO_CACHE (QUERY_CACHE_TYPE=2(DEMAND)を使用した場合に、クエリの結果をクエリキャッシュに格納するよう MySQL に指示できる)
  • SQL_CALC_FOUND_ROWS
  • HIGH_PRIORITY(SELECTステートメントがテーブルを更新するステートメントよりも優先される。このオプションは、非常に迅速に処理され、かつ直ちに実行する必要があるクエリに対してのみ使用するようにする。SELECT HIGH_PRIORITY クエリは、対象のテーブルが読み取り用にロックされれば、たとえテーブルが解放されるのを待っている更新ステートメントがあっても、実行される)
  • DISTINCT | DISTINCTROW | ALL
    select_expression,...
  • INTO {OUTFILE | DUMPFILE} 'file_name' export_options
  • FROM table_references
    • WHERE where_definition
    • GROUP BY {unsigned_integer | col_name | formula} [ASC | DESC], ... [WITH ROLLUP]]
    • HAVING where_definition
    • ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC] ,...
    • LIMIT [offset,] row_count | row_count OFFSET offset
    • PROCEDURE procedure_name(argument_list)
    • FOR UPDATE | LOCK IN SHARE MODE

SELECT 式には、AS alias_name を使用してエイリアスを指定することができる mysql> SELECT CONCAT(last_name,', ',first_name) AS full_name

   FROM mytable ORDER BY full_name;

Last-modified: 2012-03-12 (月) 17:05:46 (166d)