目次
    式は SQL
    ステートメントのいくつかのポイントで使用できます。たとえば、SELECT
    ステートメントの ORDER BY
    節や HAVING
    節、SELECT
    ステートメント、DELETE
    ステートメント、UPDATE
    ステートメントの
    WHERE 節、または
    SET
    ステートメントで使用することができます。式は、リテラル値やカラム値、NULL
    、組み込み関数、ストアドファンクション、ユーザー定義の関数、そして演算子で書くことができます。この章は、MySQL
    で式を書くことができる関数と演算子を説明します。ストアドファンクションおよびユーザー定義の関数の書き方は、Using Stored Routines (Procedures and Functions)
    と Adding New Functions to MySQL
    にあります。サーバーの異なる種類の機能に対するリファレンスの解釈を説明した規則は、項5.2.4. 「関数名の構文解析と解決」
    を参照してください。
  
    NULL
    を含む式は、その関数または演算子の資料で特別に説明されていないかぎり、常に
    NULL 値を生成します。
  
デフォルトでは、関数名とそれに続く丸括弧の間にはスペースを入れないことになっています。これは、MySQL パーサーが、関数呼び出しと、関数と同じ名前を持つテーブルまたはカラムの参照を区別するのに役立ちます。しかし、関数インスウの周りにスペースを入れることは許可されています。
    MySQL
    サーバーが関数名の後のスペースを受け入れることは、--sql-mode=IGNORE_SPACE
    オプションで開始することで分かります。詳細は、Server SQL Modes
    を参照してください。各クライアントプログラムは、mysql_real_connect()
    に
    CLIENT_IGNORE_SPACE
    オプションを使用することによって、この動作を指定することができます。どちらの場合でも、すべての関数名は予約語になります。
  
簡略化のため、この章で挙げられるほとんどの例は、省略形で mysql プログラムからの出力を記載しています。例は以下のようには表示されず :
mysql> SELECT MOD(29,9); +-----------+ | mod(29,9) | +-----------+ |
        2 | +-----------+ 1 rows in set (0.00 sec) 
このようなフォーマットで記されます :
mysql> SELECT MOD(29,9);         -> 2 

