• ベストアンサー

BETWEEN を2つ以上使用する方法はありますか?

MySQL4.0.1 PHP4.3.9 Windows2000sp4 BETWEEN を2つ以上使用する方法はありますか? 例えば2004年4月から12月のデータと2005年1月から3月のデータを取り出したいのですが。。。 $sql="SELECT*FROM TABLE WHERE (year_uk=2004 AND month_uk BETWEEN 4 AND 12) AND (year_uk=2005 AND month_uk BETWEEN 1 AND 3) 上記のような感じでやってみたのですが、うまくいきません。 よろしくお願いします。

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

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

$sql="SELECT*FROM TABLE WHERE (year_uk=2004 AND month_uk BETWEEN 4 AND 12) OR (year_uk=2005 AND month_uk BETWEEN 1 AND 3) ANDじゃなくてORでしょ

その他の回答 (1)

  • Ethersky
  • ベストアンサー率71% (168/235)
回答No.2

ANDだと、 「2004年4月から12月の間であり2005年1月から3月の間でもあるデータ」 となってしまいます。 二つの期間の両方を満たすという条件にあてはまるものがあるはずありません。 ORにすれば、 「2004年4月から12月の間か2005年1月から3月の間のデータ」 となります。

関連するQ&A