sql >> データベース >  >> RDS >> Mysql

2つの日付と2回の間のmySQLクエリ

    日付フィールドにインデックスが付けられているかどうかわからない。その場合、他の人が示した「連結」の例では、あまりうまく機能しない可能性があります。

    別の方法として、次の形式のクエリを使用できます:

    select * 
      from foo 
     where (date > lower_date and date < upper_date) -- technically this clause isn't needed if they are a day apart
        or (date = lower_date and time >= lower_time)
        or (date = upper_date and time <= upper_time)
    

    きれいではありませんが、機能し、mysqlが日付フィールドにインデックスが存在する場合はそれを利用できるようになります。

    したがって、クエリは次のようになります

    SELECT time,
           close 
      FROM intraday_values 
     where (date > "2005-03-01" and date < "2005-03-02")
        or (date = "2005-03-01" and time >= "15:30")
        or (date = "2005-03-02" and time <= "15:14")
    


    1. 2つのテーブルを一度に更新します

    2. SQLServer2000で行のセットを列として転置する

    3. casperjsを使用してWebページをスクレイピングしている間に取得したテーブルデータを保存する

    4. カウントが10より大きいすべての行を出力する単一のクエリ