-PR-
解決済み

SQL得意な方

  • すぐに回答を!
  • 質問No.299765
  • 閲覧数165
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 89% (60/67)

仕事で困っています、
なにとぞお力添えを。

テーブル1から、TOP50 でaとbを表示させたいのです。
で、その際の条件として、
開始するレコードも指定したいのです。
下記SQLの[○]の部分に50が入っていたら、
51~100件を表示する、と、いうような。

SELECT TOP 50 a,b FROM テーブル1
WHERE c='1' AND a >= '' AND a
NOT IN ( SELECT TOP 〇 a FROM テーブル1)
ORDER BY a

で、順調だったのですが、WHERE条件が
なんだか怪しいらしく、
a >= ''の時だけはきちんと動くのですが、
ANDでc='1'をつけた所、普通に全件表示されてしまいます。

[ちゃんと51件目から100件目を表示するSQL]
SELECT TOP 50 a,b FROM テーブル1
WHERE a >= '' AND a
NOT IN ( SELECT TOP 〇 a FROM テーブル1)
ORDER BY a

[何故か全件表示になるSQL]
SELECT TOP 50 a,b FROM テーブル1
WHERE c='1' AND a >= '' AND a
NOT IN ( SELECT TOP 〇 a FROM テーブル1)
ORDER BY a
※[何故かNOT IN (~)の部分がまったく働いていない]

どうしてなのでしょう?。
解りにくい質問で大変申し訳ないのですが
どなたかご教授いただけないでしょうか。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル14

ベストアンサー率 65% (1020/1553)

サブクエリー側にwhere句が無いんですけどいいんですか?
お礼コメント
TTU006

お礼率 89% (60/67)

返答ありがとうございます。

<サブクエリー側にwhere句が無いんですけどいいんですか?>

ぜんぜんよくありませんでした(苦笑)。
ああ、そんなことかぁ・・・
でも、ぜんぜん気が付かなかったです、はい。
プログラマ失格ですね、僕。ははは。

とにかく、ほんと助かりました。
40点ぐらい差し上げたいですが20点で勘弁してください。
では。また機会があれば宜しくお願い致します。
投稿日時 - 2002-06-25 14:38:23
このQ&Aで解決しましたか?
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-

特集


開業・独立という夢を持つ人へ向けた情報満載!

ピックアップ

ページ先頭へ