Если listing.trackdate
- это поле DATE
, почему необходимо форматирование для сравнения с другой датой?Похоже, вы берете значение даты и превращаете его в строку, чтобы вы могли сравнить его со значением строки, которое вы превратили в дату.
Избыточность в этом подходе должна, я надеюсь,быть очевидным
Что касается первого вопроса, который вы задаете, конечно, DATE_FORMAT(listing.trackdate)
должен оцениваться для каждой строки, так как значение в этом поле будет меняться.Но, похоже,
WHERE listing.trackdate >= STR_TO_DATE('$search_sdate','%m/%d/%Y')
должно быть достаточно, если trackdate
действительно поле DATE.