1

私はこのようなテーブルを持っています

AB
-----------
 1.2 2.3
 2.3 3.9
 3.9 4.34
 4.345.786

データが意味するのは、1.2-5.786はいくつかのテーブルの長さであり、1.2-2.3はいくつかの属性を持っているということです。ここの例)。

2つの値の間の行を取得するクエリを実行したいと思います。例:

A = 1.1 amd B = 4.234

クエリの書き方を理解するのに苦労しています。私が書くクエリのほとんどは、いくつかのエッジケースを省略しています。

4

3 に答える 3

1

これはうまくいくようです:

select *
from yourtable
where (b > 1.1 and a <= 4.234)

SQLフィドルデモ

基本的に、bが下限より大きく、aが上限以下であることを確認してください。希望する結果によっては、に変更する必要がある場合がありb >ますb >=

于 2013-03-26T23:28:20.927 に答える
0

たとえば、その間の値が必要な場合A =1.1 amd B = 4.234、出力は次のようになります。

  A       B

1.2         2.3

2.3         3.9

クエリは次のとおりです。

SELECT * from my_table WHERE A>=1.1 AND B<=4.234

しかし、出力が必要な場合

  A       B

1.2         2.3

2.3         3.9

3.9         4.34

次に、クエリが必要です

SELECT * FROM my_table WHERE A >= 1.1 AND A < 4.234 B > 4.234
于 2013-03-26T23:04:53.543 に答える
0

あなたが望むように聞こえます

SELECT a, b
  FROM my_table 
  WHERE A >= 1.1 AND B <= 4.234
     OR A >= 1.1 AND A <  4.234 
     OR B >  1.1 AND B <= 4.234

これは、Aが常に<Bであることを前提としています

于 2013-03-26T23:32:19.063 に答える