• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SqlServer2012 ビューとクエリ)

SqlServer2012 ビューとクエリの違いと概念について教えてください

原沢 信道(@nharasawa)の回答

回答No.3

クエリ(Query)は「問い合わせ」の意味でSQLのQは元々はQueryの略でしたが今はSQLで一つの言葉になっています。ビュー(View)は「景色」や「見解」と言った意味ですが、RDBMSでは実際のテーブルをSQLのSELECTで問い合わせた状態を、仮想のテーブルと見立てる場合に使用します。ちなみに私の作っているツールは7種類のRDBMSに対応していますが、テーブル名一覧等のテーブル構造がRDBMS毎に異なるのでViewを造って見かけ上同じ構造のテーブルに見立てる事でツール側ではどのRDBMSでも同じ書き方でSQLが書けるので便利に使っています。

KAZUMI2003
質問者

お礼

結果的にクエリの代わりにビューを使うことにしました。 並べ替えが働かないのは、実際に使うSQLの中に、ビューを内包してOrderBy句を書くことにしました。 この度は教えていただいて、ありがとうございました。

KAZUMI2003
質問者

補足

回答ありがとうございます。 やはり、よくわからないので、図書館で本を何冊か借りてきました。 これから読んで、学習してみようと思います。

関連するQ&A

  • SQLServer2005 実行したクエリ

    SQLServer2005にて実行したクエリを取得したいと考えています。 条件としては、実行したクエリとそれを実行したSPIDを取得できればと考えております。 接続が切れた時点で実行したクエリが消えてしまうので、別テーブルを用意して登録しておければ最高です。 理想としては、クエリが実行されたら用意したテーブルに実行したクエリとSPIDを書き込むといったかんじです。 しかし、システムテーブル、システムビューにトリガは付けられないようで困っています。 どなたかわかる方がいらっしゃったらよろしくお願いいたします。

  • ACCESSのクエリで同じSQL文だが結果が異なる

    ACCESS2003にて 選択クエリAをSQLビューで開きSQL文をコピー、 新規作成したクエリBのSQLビューに貼り付けて実行したところ、 AとBで結果の件数が異なりました。 そのままBを保存して終了。 BをSQLビューで開き、 SQL文の末尾の;を削除して実行すると、 Aと同じ件数の結果になりました。 再度Bを保存して終了し、 BをSQLビューで開き、 SQL文の末尾の;を削除して実行すると、 Aと異なる件数(元の結果)になりました。 何が原因なのでしょうか。 SQL文の内容は、サブクエリを含んでいて、サブクエリのFROMは SQLSERVERのリンクテーブルです。 よろしくお願いします。

  • Accessのクエリのプロパティ

    クエリのプロパティの「最大レコード数」について教えてください!! 「ODBCデータベースからAccessデータベースにデータを返すクエリやSQLデータベースからAccessプロジェクトにデータを返すビューで返される最大レコード数を指定します。」 という説明を見たのですが、なんのことやら。。。 わかりやすく教えてほしいのです。

  • SQLを発行とは?クエリの作成とは違うのですか?

    SQLを発行とは?クエリの作成とは違うのですか? アクセスしかわからない者です。 (SQLServerは無知) SQLを発行とか実行とかの言葉をよく目にしますが アクセスでテーブルを元に選択クエリを作成するのは 俗に言う「SQLを発行」でしょうか?

  • SQLServer→Access インポート

    こんばんは。 Windows2000、Access2000でVBにて開発をしています。  1.SQLServerのリンクテーブルおよびAccessローカルテーブルからテーブル作成クエリを実行→TableA  2.TableAを「TableA_YYYY/MM/DD」としてSQLServerへコピー(YYYY/MM/DD=出力時の日付) 1.2.を前提に、前日のTableA_YYYY/MM/DDをAccessへ「TableB」としてインポートしたいのですが、 'SQLServerのデータベース名 Path = "ODBC;DSN=AAA;UID=BBB;PWD=CCC;DATABASE=DDD" DoCmd.TransferDatabase acImport, "ODBC データベース", Path, acTable, "TableA_" & DateAdd(d,-1,date), TableB, False, True とすると、 「クエリの構文エラーです。クエリの句が不完全です。」 とエラーになってしまいます。 どなたか、解決策を教えていただけたらと思います。

  • SQLserverについて

    SQLの勉強を兼ねて、SQLserver を インストールして使ってみたいのですが、 特にサーバーなど立てずに、 スタンドアローンの環境で SQLserverをインストールして ローカルのACCESS のmdbに接続して SQL文など実行出来るのでしょうか? (Enterprise Manager は 使えるのでしょうか?) よろしくお願いします。

  • SQLServer2000

    SQLServerにあるデータを他のプログラムから取得できません。ノーツ⇒ODBC⇒SQLServerのように設定しているのですが値の取得で失敗しているようです。クエリーは聞いているようです。 例えばノーツ⇒ODBC⇒アクセスではOKですが(クエリーされる。)、ノーツ⇒ODBC⇒SQLServerではダメです。エンタープライズマネジャーから同じクエリーを実行すると成功します。権限の問題なのか仕様の問題かわかりません。どなたか教えてください。 お願いします。

  • SQLServer2005 でSELECTを実行した結果(クエリ結果)がSQLServer2000の時の2倍の大きさになる

    SQLServer2005 でSELECTを実行した結果(クエリ結果)をファイルに出力したところ、同じデータベース項目をSQLServer2000 でSELECTした結果の2倍程度の大きさになる。 ファイルダンプを採取して中身をみたところ、UNICODEでファイル出力されており、すべての半角文字が2バイト表記されていたため、SQLServer2000(こちらは半角文字は1バイト)のほぼ2倍の大きさになっている事が分かりました。 SQLServer2005 でSELECTを実行した結果(クエリ結果)を半角文字は1バイトで出力する良い方法をご存じの方、ご教示いただけないでしょうか?

  • SQLServer7.0のエラーについて

    SQLServer7.0のSP4をあてたところ、サービスが 動かなくなってしまいました。 エラーログは下記の内容です。 "サーバー コマンド (プロセス ID #9) が原因でクエリの内部並列実行がデッドロックしました。クエリ ヒント オプション (maxdop 1) を使用して、クエリ内部並列実行を指定しないでクエリを再実行してください。" このエラーを回避する方法をご存知ではないでしょうか? SPをアンインストールすることはできないでしょうか? また、調べていたところOPTION句?を使用してMAXDOPを 1に設定するという方法がありました。 この方法をSQL文ではなく、ツール?から設定する方法をご存知でしたら教えてください。 知識がないためうまく説明できずすみません。 非常に困っております。 どなたかご存知の方おみえになりましたら教えてください。

  • クエリの保存場所

    新しいクエリを挿入して クエリを保存したときは データベースの ・テーブル ・ビュー ・シノニム ・プログラミング ・セキュリティ のどこに保存されるのでしょうか? SQL Server Management Studio ExpressのProjectsに「.sql」で保存されるようですが データベースから開くことはできないのでしょうか?