重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

プログラミング初心者です。
基本的な質問です。
教えてください。

例えば
Select name, id from kaaisha order by id descという SQL文を
Vbscriptで生成したRecordsetオブジェクトでOpenした時というのは、
idが最上値のレコード1行のみ返すのでしょうか?
それともこの場合、降順で全てのレコードを返すのでしょうか?

よろしくお願いします。

A 回答 (1件)

SQLというのはその名前の通りクエリ言語です。

つまり命令して検索したものは塊として全部持ってきます。
全部を持ってきてその中から探すような書き方をしてはダメ。なるべく細かく検索を絞り込んで結果を少なくするのが普通です。特にVbscriptは。
あとは、メモリ上にカーソルを宣言し、カーソルを回すことで、その値に従ってその都度サーバーに取得する方法もあります。レコードセットを回すのと違うので効率が良いです。
しかし最近のプログラミングでは逆もまたしかり。インターネットの複数の場所からそれぞれのレコードを持ってくるとき。一つの結果ともう一つの結果を組み合わせて結果を出すときですね。C#などではメモリ上にDatasetとして仮想テーブルを作りそこに全部入れる。それを結果の分だけ作る。その上でメモリ上でいくつかをJOINして再クエリを掛ける。そういうやり方もあります。これはデーター数が限られているときか、あるポイントのスナップを取得し結果をあとから書き込む時です。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!