タグ

structured-query-languageとselectに関するnabinnoのブックマーク (9)

  • SELECT INTOで他のテーブルからデータを複製またはテーブルを作成する [SQLServer]

    プログラムの登録、更新、削除のテストをしていると、操作対象のテーブルのデータを一旦退避させたり、テスト用に番データベースのテーブルをコピーしたりする時があります。 そこで今回は、SQLServerで既存のテーブルのデータをもとに、SELECT INTOステートメントで新しいテーブルを複製、または作成する方法を紹介します。 使用するテーブルの準備 SELECT INTOステートメントでテーブルを複製するサンプルのSQLを実行するために簡単なテーブルを作成します。 作成するテーブルは顧客IDと氏名を持つ顧客テーブルと、顧客テーブルの1件のレコードに対して複数件のレコードが紐づく顧客電話番号テーブルです。 テーブルの定義 顧客テーブルと顧客電話番号テーブルの定義は次のようにします。

    SELECT INTOで他のテーブルからデータを複製またはテーブルを作成する [SQLServer]
  • n+1問題を体験しました - p_chinのおっぱいブログ

    ORM使ってて、便利で余裕キメてたらn+1問題を起こしてた。 n+1問題とは 1回目 のselectで、あるテーブルのレコードの集合を取ってきて、更にまた別のテーブルから先ほど取得したレコードデータ使用して n回 selectクエリを発行してしまう現象だ。 うまく説明出来ないので下の具体例書いてみた 解決策(今回の事案の場合) JOIN使ってクエリを一回にまとめる WHERE IN使ってクエリを2回にまとめる のどちらかの対処でクエリ減らす努力をするべきだった。 具体的にどうやってしまったか friendテーブルからplayerのフレンドのレコードの集合を1回引っ張ってきて、そのレコードからまたplayerテーブルへ、フレンドのplayerデータをn回取りに行っている。 sub _get_friends_info { # 自分のフレンド関係データ(player, target)のレコードの

    n+1問題を体験しました - p_chinのおっぱいブログ
  • 窓関数 (SQL) - Wikipedia

    この記事には参考文献や外部リンクの一覧が含まれていますが、脚注によって参照されておらず、情報源が不明瞭です。 脚注を導入して、記事の信頼性向上にご協力ください。(2020年3月) SQL において、窓関数(まどかんすう)もしくはウィンドウ関数 (ウィンドウかんすう、英: window function) は、結果セットを部分的に切り出した領域に集約関数を適用できる拡張された SELECT ステートメントである。SQL:2003 以降の標準SQLで規定されている。分析関数やOLAP機能と呼ばれる場合もある。 以下の例は、同じ city ごとに、その人口を集計している。

  • 再帰クエリ - Wikipedia

    標準SQLでは再帰クエリを共通表式の一環として定義している。WITH RECURSIVE 形式の構文をサポートする関係データベース管理システムを以下に挙げる。通常RECURSIVE句は省略可能であるが、PostgreSQLでは省略できない。: IBM DB2 [1] Microsoft SQL Server [2] Firebird 2.1[3] PostgreSQL 8.4 [4] Oracle Database 11gR2[5] H2 Database[6] 例 (PostgreSQL): WITH RECURSIVE r(level, employee, empno, mgr) AS ( SELECT 1, ename, empno, mgr FROM emp WHERE mgr IS NULL UNION ALL SELECT r.level + 1, repeat(' ', r.

  • SELECT文で並べ替えを行うには?

    この記事で分かること SQL文における大文字、小文字の扱いや改行方法、文字列やオブジェクト名の囲み方といった書き方を解説 並べ替え(ORDER BY)は、指定しないとRDBMS任せだが、昇順(ASC)、降順(DESC)を指定して制御できる 並べ替え順序(Sort Order)はSQL Serverの設定で決まり、特に大文字小文字の区別が影響する 更新履歴 【2025/05/19】記事の要約を追記しました SQL文の記述方法について 前回に引き続き、今回はSELECT文での並べ替えの仕方(ORDER BY)の説明をします。説明に入る前に、SQL文の記述方法について、若干補足をします。 大文字と小文字の区別 SQLで大文字と小文字を区別するか否かは、今回解説するサーバごとに設定される「並べ替え順」で決まります。この設定により、テーブル名、列名といったDBの構造に関する名称(オブジェクト名)も、

    SELECT文で並べ替えを行うには?
  • SELECT 文の活用(ORDER BY) - オラクル・Oracle SQL 入門

    SELECT 文の活用(ORDER BY) Top | Knowledge| DB構築| 文字列関数| 日付関数| 集計関数| SQL関数(アルファベット順) SQL(抽出・更新)| SQL*Plus| PL/SQL| Utility| Structure| スキーマ| チューニング| 用語| 参考書 並び替え:ORDER BY レコードの並び替え (ORDER BY) 抽出したデータの並び替えには SELECT 文 の中の ORDER BY を使用する。 並び替えは、列ごとに昇順、降順、NULLの表示順を設定できる。 並び替えキーワードは 昇順:ASC(無指定時 デフォルト) と 降順:DESC 単一列 での並び替え DEPT_NO の降順で表示する。 ⇒ ORDER BY DEPT_NO DESC SELECT * FROM USER_MASTER ORDER BY DEPT_NO D

  • Oracle SQL(SELECT:SELECT文の基礎的な構文などについて)

    SELECT文の基的な構文 SELECT <列名リスト> FROM <表名リスト> SELECT句では検索したい表の列の名前を、FROM句には検索される表の名前を記述する。 <<句(フレーズ)と文(ステートメント)について>> SQLではSELECT,FROMの語はキーワードと呼ばれ、キーワードはその他の語と一体となり 句(フレーズ)と呼ばれる単位になります。また、いくつかの句が組み合わさり1個の命令 となったものを文(ステートメント)よ呼びます。 但し、句同士の連結の順序は定義されていて、上の例ではFROM句とSELECT句の順番が 入れ替わることはありません。 特定の列を検索する場合 特定の列を検索する場合は<列名リスト>にカンマ(,)を区切り記号として列記します。 <列名リスト>の記述順番に列の表示がされます。 SQL>SELECT ENAME , EMPNO , JOB , MG

  • Oracle SQL(SELECT:SELECT文の基礎2(グループ化について)

    SELECT文の基的な構文 SELECT <列名リスト> | <式リスト> FROM <表名リスト> [WHERE <検索条件>] [GROUP BY <列名リスト>] [HAVING <グループ条件>] [ORDER BY <式> [ASC | DESC] ...] WHERE句についてはSELECT文その1で説明しましたが、今回GROUP BY句,HAVING句,ORDER BY句が でてきました。GROUP BY句は検索列のグループ化を指示するもので、またHAVING句はグループ化 を指示しているデータに条件付けを指示するキーワードです。この説明では良くわからないと 思いますが、以降の例を参照してもらえれば理解できると思います。 尚,ORDER BY句はデータの並び替えを指示するキーワードです。 簡単なデータの並び替え SQL> SELECT * FROM EMP WHERE DE

  • SQL 基礎編 (その四) データ照会 select、where、group by、order by - SAK Streets

    SQL 基礎編 (その四) データ照会 select、where、group by、order by ■select テーブルまたは、ビューからデータを照会します。 【例】select * from sak.品番m where 品番 = 'a001' where 句で指定された品番 a001 のすべての項目を照会します。 VB の rdo では、この結果をレコードセットとして扱います。 【例】select 品番, 出庫数 from sak.品番m where 品番 = 'a001' 品番 a001 の品番と出庫数だけを照会します。 【例】select 品番, 出庫数 from sak.品番m where 品番 >= 'a001' and 品番 = 'a001' and 品番 2000.10.14 SQL 基礎編 (その一) テーブル操作 create table、alter table、

  • 1