重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

こんにちは。PHP5とMySQLで開発をしています。
プログラミングをしていまして
・コード1
tbl1.create_time BETWEEN '2007/10/12' AND '2007/10/18'
・コード2
DATE_FORMAT(tbl1.create_time , '%Y-%m-%d') >= '2007-10-12' AND DATE_FORMAT(tbl1.create_time , '%Y-%m-%d') <= '2007-10-18'

自分自身上記の2つのコードは、
「tbl1のcreate_timeカラムの値が2007/10/12~18の間のもの」という指定で同じかなとおもったのですが、実際に実行すると微妙に違った結果を
表示します。(コード1の方が対象期間が多い)
なぜそうなるか教えてください。

A 回答 (2件)

create_time


っていうくらいだからdatetime型なんじゃないですか?
datetime型を日付でBETWEENをとれば最終日はヒットしないのでは?

この回答への補足

はい、yambejpさんのいうとおり最終日はヒットしない結果でした。

補足日時:2007/10/19 18:32
    • good
    • 0

>tbl1.create_time BETWEEN '2007/10/12' AND '2007/10/18'


tbl1.create_time BETWEEN '2007-10-12' AND '2007-10-18'
の間違いでしょうか。
ハイフンにすれば同じ結果が返ってくるかと。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!