Select句とは? わかりやすく解説

SELECT句

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/09/27 04:10 UTC 版)

SELECT (SQL)」の記事における「SELECT句」の解説

SELECT文において必須の構成句。指定列を記述することで、列を射影する。*で全列表示できるまた、算術演算子グループ関数使用可能。 入力規則名入規則主なものとしては 列名に使用できる文字半角英数字および、$,#,_(アンダースコア)のみ。但し、一部DBMSにおける日本語版に限り全角文字使用可能。 列名の先頭半角アルファベットのみ文字上限半角30文字まで。 デフォルト大文字表示される小文字などで表示した場合単一行関数用いるか、" "で括るなどの処置が必要である。 各種DBMSにおける予約語使用できない場合がある。 列別名 列名 [AS] 列別名 (ASは省略可) で、列別名表示ができる。但し、WHERE句GROUP BY句HAVING句では列別名の記述できないまた、列名の表示に際してデフォルト半角大文字である。これを小文字などで表示させたい場合単一行関数文字関数使用するか、" "で括るかするとよい。 ALL/DISTINCTの指定 ALL...テーブルに同じデータ行がある場合でもすべてのデータ返す指定ない場合はALLが選択されるDISTINCT(UNIQUE)...テーブルに同じデータ行がある場合重複取り除いた1件のみを返すグループ関数使用可能(Access不可)。 単一行関数 単一の行を操作する関数で、一つの行に対し一つ結果返していく関数。SELECT句、WHERE句ORDER BY句使用可能で、以下の種類がある。また、ネスト入れ子)に制限はない。 文字関数 文字操作する関数主なものに以下のものがあるが、対応しているDBMS各種異なっているため、注意が必要である。 LOWER …殆どのDBMSで対応。指定した文字列小文字変換する。 例:LOWER('ABC') → abc UPPER指定した文字列大文字変換する。 例:UPPER('xyz') → XYZ INITCAP …OraclepostgreSQL指定可能。指定した文字列先頭のみを大文字変換する。 例:INITCAP('WORLD')→ World INSERTMySQLDB2指定可能。指定した文字列特定の文字列置換挿入する。(任意の文字列,挿入位置,置換を行う文字数《0の場合は、挿入》、挿入する文字) 例:INSERT('123',2,1,'to') → 1to3 INSERT('worldnews',6,0,'weather') →worldweathernews CONCATOracleMySQLDB2指定可能。指定した文字列結合する。例:CONCAT('blue','bird') → bluebird LEFT/RIGHTMySQLSQLserverなどに対応。文字列の左/右部分抽出するSUBSTROracleMYSQLなどに対応。指定した文字列抽出する。(探索する文字列,探索開始位置《-の場合文字列末尾から》,抽出する文字数省略した場合全て》) 例:SUBSTR('architecture',6,3) → tec 。 INSTR …OracleMySQLAccess指定可能。指定した文字列位置参照する。(探索する文字列,参照する文字複数存在する最初に探索され位置参照される》) 例:INSTR('emperor','r') → 5 LENGTH/LEN …指定した文字列長さ参照する(間の空白も含む)。例:LENGTH('Sri Jayawardenepura Kotte') →24 TRIM … ほとんどのDBMSに対応。指定した文字削除する対応できるのは先頭末尾のみである。 例:TRIM('S' FROM 'sword' ) →word REPLACE指定文字置き換える(該当文字全て置き換わる)。 例:REPLACE('encyclopedia','e','u') →uncyclopudia REPEAT/REPLICATE …MySQLPostgreSQLなどに対応。指定文字任意の数だけ繰り返す。 例:REPEAT('S',5) → SSSSS REVERSEMySQLSQLserverに対応。文字列反転させる。 例REVERSE('Lee') → eeL SPACEMySQLSQLserverDB2などに対応。スペース文字列作成する。 などがある。 数値関数 数値操作する関数汎用されているものとしてROUND四捨五入)、TRUNC(切り捨て)、MOD剰余)などがある。ROUNDとTRUNCには引数共通のルールがあり、(数値,n)において、n>=0の場合小数点第(n+1)位を処理する。n<0の場合10の(-n-1)乗の値を四捨五入するROUND指定された値の四捨五入を行う。例:ROUND(123.456,0) →123 ROUND(123.456,1) →123.5 ROUND(123.456,-1) →120 TRUNC …指定された値を切り捨てる。 例:TRUNC(123.456,-2) → 100 MOD除算における剰余返す。(被除数,除数) 例:MOD(1000,30) → 10 日関数 日付操作する関数各種DBMSによって大きく操作方法異なるため、注意が必要。 データ型変換関数 特定のデータ型特定のデータ型変換できる同様に各種DBMSによって使用可能な関数異なる。 グループ関数 グループ化行ったに対して一つ結果返す関数。SELECT句(但し、GROUP BY句指定した列のみ)、HAVING句ORDER BY句使用可能。ネスト2段まで可能である。種類としてはAVG平均値),MAX最大値)、MIN最小値)、SUM合計)、COUNT返される行数)、STDDEV(標準偏差)などがある。 COUNT 行数返すものであって合計値返すものではない。合計値返す場合SUM用いる。たとえば、正規化行っていない販売実績商品番号,商品名,販売日,販売個数)という表から、各商品における合計販売個数求めようとした場合SELECT 商品名,COUNT(販売個数) FROM 販売実績 GROUP BY 商品名 とすると、各商品名登場頻度、すなわち販売され回数個数不問)が返されてしまうことになる。 また、前述のALL、DISTINCT使用可能である。例文COUNT(DISTINCT 販売日)とした場合日毎販売され商品数が返されることになる(同じ日に売れた商品重複避けられるため。対して省略、あるいはALLを使うと延べ数となる)。 ※COUNT(*)とすると、NULL値含めた全ての行数返すが、COUNT(列名)とした場合NULL値返さない集合演算 複数表から問合わせ結果参照する複合問合わせを行うための演算子用いた構文のこと。UNION和集合)、UNION ALL(全集合)、INTERSECT(積集合)、EXCEPTまたはMINUS差分集合)があるが、DBMS環境によって使用できないものや演算子の名称が異なるものもある。各演算子における優先順位はなく、左から右に、順番処理される主な条件として 問い合わせる行を一致させる必要がある。 各SELECT句に対応する行のデータ型の種類一致させる必要がある一部データ型において互換性は持つ)。 データサイズは一致していなくても良い。 ある条件満たせば、列名は異なっていても構わないUNION ALL以外はソートされて返されるデフォルト前文の第1列が基準となる。

※この「SELECT句」の解説は、「SELECT (SQL)」の解説の一部です。
「SELECT句」を含む「SELECT (SQL)」の記事については、「SELECT (SQL)」の概要を参照ください。

ウィキペディア小見出し辞書の「Select句」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Select句」の関連用語

Select句のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Select句のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのSELECT (SQL) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS