次の方法で共有


式の構造

式は、列名、リテラル、演算子、および関数の任意の組み合わせで構成されます。

要素を組み合わせて式を作成するときには、次のガイドラインに従ってください。

  • 名前を入力して列を参照します。 クエリで複数のテーブルを使用しているときに、一意でない列名が含まれる場合は、列名にテーブル名とピリオドを追加する必要があります。 次の例では、列名 job_id をテーブル名 employee で修飾しています。

    employee.job_id
    
  • リテラル文字列を含めるときは単一引用符で囲みます。数値の場合は引用符は不要です。

    注意

    一部のデータベースでは、単一引用符で囲まれた項目がリテラル値として解釈され、二重引用符で囲まれた項目が列やテーブル参照などのデータベース オブジェクトとして解釈されます。このため、クエリおよびデザイナーでは二重引用符で囲まれた項目も受け入れることができますが、その項目が期待どおりに解釈されるとは限りません。SQL Server の場合、クエリおよびビュー デザイナーは二重引用符を常にデータベース オブジェクトの区切り記号として解釈します。

  • 数値には標準の算術演算子を使用し、文字列の結合には連結演算子を使用します。

  • かっこを使用して演算子の優先順位を明確にします。

  • 関数を含める場合は、関数に渡す引数に対しても同じガイドラインを適用します。 つまり、名前を入力して列を参照し、リテラル文字列は単一引用符で囲むなどです。

  • 関数の引数として列名を渡す場合は、列のデータ型がその引数に対して適切であることを確認してください。

  • スカラー値を返すユーザー定義関数を式に含めることができます。

次の表に、クエリでの式の使用法を示します。

式 *

結果

SELECT (price * .9)FROM products

割り引き価格 (price 列の値の 10% 引き) を表示します。

SELECT sales.qty, titles.price

FROM sales INNER JOIN titles ON sales.title_id = titles.title_id ORDER BY (sales.qty * titles.price)

2 つのテーブルを結合し、注文の合計値 (数量×価格) で結果セットを並べ替えます。

SELECT au_lname, au_fname FROM authors WHERE (SUBSTRING(phone, 1, 3) = '415')

市外局番がサンフランシスコ地域である著者を表示します。

SELECT ord_num, ord_date FROM sales WHERE (ord_date >= DATEADD(day, -10, GETDATE()))

sales テーブル内で最近 10 日間に発生した注文をすべて検索します。 GETDATE( ) 関数で今日の日付が返されます。

*   ここに示した演算子および関数のいくつかは、特定のデータベースに固有のものです。 使用できる演算子と関数の詳細については、データベースのドキュメントを参照してください。

参照

概念

式の定義済み変数

クエリでの式の使用

その他の技術情報

パラメーターを使用したクエリの作成