• ベストアンサー

SQL

ある番号が 1~2000まで割り振られているとして、 この2001~2099まではselect 文で表示させないようにするにはどのようにしららいいのでしょうか?? 私が思いつくのは、配列にしたデータをinで閉じるしか思いつきませんでした。

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

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

no NOT BETWEEN 2001 AND 2099 ではダメでしょうか

aiurai54
質問者

お礼

ありがとうございます。試してみます。

関連するQ&A

  • SQL '%@'とは?

    こんばんわ。 SQLの質問なのですが、 SELECT * FROM aテーブル WHERE aテーブル.番号 IN '%@' というSQL文が 学校で使われていましたが、 '%@'とは何を指すのでしょうか? 調べても分からなかったので ご教授願います。

  • sql server whereについて

    sql server express2012 のselect文で select * from 商品マスタ where 商品コード in (1,2,3,1)とした場合、商品マスタには商品コード=1のデータは1件しかないけど、商品コード=1のデータ(同一データ)を2行表示する方法はありませんか? 宜しくお願いします

  • SQLの高速化の方法について

    自分ではすぐに浮かばないのですが、結構急ぎのことなのでお時間がある方でご存知の方がいらしたら教えて下さると嬉しいです。なので、途中で解決していたり質問を途中で消しているかもしれませんがよろしくお願いします。 SQLで自分が書いた文を高速化したいのですが、一般的にこうすると遅いからこうする方が良いというのがあれば教えてください。 一応自分でも調べててWHERE句では結合よりも先に条件を記載する方が良いとか書いてました。 あと、IN演算子がちょっと問題な演算子ということが。 確かにSQL文を書いているソースではいくつかSELECT文があって、それぞれでIN演算子を使っています。 調べてるとIN演算子をEXISTS演算子に書き換える方が良くなるとあったのですがEXISTS演算子はカッコ内で再度SELECT文を作るんですよね? 今使っているIN演算子では、ほぼカッコ内に数字のいくつかの候補があってそこから該当する数字を選ばれるという形の方。 WHERE AAA IN ('122','244','366') といった形です。 あるSELECT文でIN演算子を使って絞った値データを次のSELECT分のIN演算子の値候補として使用しています。 つまり、上記のような文122と244のデータが見つかってSELECTされると次のSELECT文のIN演算子の候補として122と244が入るという形です。 ちなみにこの処理のメインとなるテーブルでは一つの項目の値を木構造で分けているのでその辺りも考えないといけません。 以前、こちらのサイトで教えて貰った方法で動いている GROUP BY AA.A1 HAVING COUNT(*) >= 0 といった処理も重くしてしまうのでしょうか?

    • ベストアンサー
    • MySQL
  • INで抽出した順番に並び替え(SQL)

    MySQLでINで抽出した順番で並び替えて表示したいのですが、簡単に行う方法はありませんか? [例] SELECT ID,NAME FROM TABLE WHERE ID IN (5,7,3); このSELECT文の抽出結果を5,7,3の順番に並び替えたいのです。 もちろん力技で行うこと(1つずつSELECTで抽出して表示)は可能なのですが、あまりにもスマートではないので・・・。

    • ベストアンサー
    • MySQL
  • SQL文について

    SQL文について 現在一度に検索ができずに困っているため質問します。 データベースに男性テーブルと女性テーブルがあります。 男性テーブル ・番号 ・名前 女性テーブル ・番号 ・名前 このテーブルより自分の父、母、母の父を表示させたいのですが SELECT 男性テーブル.名前, 女性テーブル.名前, (※母の父を表示させたい) FROM 男性テーブル, 女性テーブル WHERE 男性テーブル.番号=父の番号 AND 女性テーブル.番号=母の番号 このあと条件に (AND 男性テーブル.番号=母の父の番号) をつけることはできないためSQL文の書き方で困っています。 抽出データは複数なので※の部分にサブクエリを書くことができません。 何かよいSQLの書き方はありますでしょうか?

  • SQLについて何ですが

    一つのSQLで下記の様な検索が出来ないかと考えています、 大分類に分けて大分類の中で売れている商品のTOP10を表示し、 現在表示されている商品を抜いた売れている商品TOP100もに表示できるようとしています、 分類のテーブル・商品がどの分類に当てはまるのか関連づけし注文数も保持しているテーブル・商品の売れ行きを保持しているテーブルがあり 分類テーブルには15個(将来的に増える可能性ある)の分類ワードが入っていて、分類別に売れているTOP10を表示し重複部分もあるので最大150個の商品が表示されるようになっています、 全商品の売れ行きTop「表示されている商品プラス100件」を割り出しその中から表示商品はずしてみようと思いこの様なSQL文と作ったのですが今一うまくいっていないような気がします、 「select 商品名 注文数 from 商品テーブル    where 商品名 not in( select 商品名 from 分類商品テーブル where 分類 in ( select 分類 from 分類テーブル )    order by 注文数 desc limit 10) order by 注文数 desc limit 表示商品数+100」 どうもうまく表示できていない様な気がしているのですが、 このSQLどうなのでしょうか? ほかにもっといいSQL文があれば教えてください。 」

  • SQLでの質問です・・

    CSVデータのFROM,TO番号がtblデータのFROM~TO番号に無いことを調べたいのですが、 【データ】 CSVデータ→key1,key2,FROM番号,TO番号 tblデータ→key1,key2,FROM番号,TO番号 【条件】 CSVデータ,tblデータのkey1,key2が同じ事が条件で、 (1)CSVデータのFROM番号がtblデータのFROM番号~TO番号に無いこと (2)CSVデータのTO番号がtblデータのFROM番号~TO番号に無いこと (1),(2)をそれぞれSQL文(select,where句)でやりたいのですが。。。 実際の結果、無い場合は0が出力される?あった場合はどうなるのでしょう? 因みに環境は9iです。

  • select文のwhere句に配列を入れて検索したい

    こんばんは。 題名の通り、select文のwhere句に配列を入れて検索したいのですが、 同じ質問↓も見つけ、やってはみるのですがうまくいかないので、教えてください。 http://oshiete1.goo.ne.jp/qa2940474.html 現在、 $member_id という配列にデータを入れ(この配列には正しく値が入っています。) $sql = "SELECT * FROM テーブル名 WHERE id IN (".$member_id."); としているのですが、うまくいきません。 どこがおかしいのでしょうか。 よろしくお願いします。

    • ベストアンサー
    • MySQL
  • SQLで分からないことがあります。

    仕入明細テーブル 伝票NO   インデックス番号   部数 出費詳細テーブル 伝票NO  出費先  出費額 以上のデータがあります。 仕入明細テーブルでインデックス番号でグルーピング化して部数の合計値が2000以上のインデックス番号と同じ値の出費詳細テーブルの伝票NOのレコードを削除しなさい。 delete 出費詳細 where 伝票NO in (select インデックス番号, sum(部数) from 仕入明細             group by インデックス番号             having sum(部数) >= 100); これだと出来ませんよね? sum(部数)が100以上のものを抽出するためにはselectでsum(部数)としなくてはいけないのですが これだとダメですよね?伝票NOと同じか比較するのインデックス番号なので、selectでsum(部数)としないのは可能でしょうか?

  • SQL文について質問させて頂きます。

    いつもお世話になっております。いろいろSQL文の本を読んだのですがわからないので今回もよろしく お願い致します。 SELECT DISTINCT * FROM bukken WHERE (id IN (SELECT fid FROM fudou_kodawari WHERE kid IN (1,4))) というSQL文があるのですが、これだと1,4が1つでも含まれるリストが出てくるのですが1,4が完全に一致しないと出てこないようにするにはどのようにSQL文を変更すれば良いのでしょうか? 何卒よろしくお願い致します。