Coldfusion MySQL Query of Queries Выбор даты - PullRequest
1 голос
/ 02 января 2012

Я пытаюсь запросить запрос в Coldfusion с полем отметки времени (гггг-мм-дд ЧЧ: мм: сс), переформатированным к определенной дате. Я могу получить исходный запрос в «формате даты» хорошо, но я не могу получить запрос запроса, чтобы выбрать дату. Я попытался изменить параметр запроса cf_sql на другие значения, но я продолжаю получать 0 RecordCount. Поле db - это varchar, и я попытался изменить его на метку времени, но оно все равно не сработало. Есть идеи, чего я не вижу?

<cfquery datasource="#DataSource#" name="rsAll">
  SELECT ID, date_format(DateSent, '%Y-%m-%d') As DateSent 
  FROM 'workorders'
  WHERE RelCompID_FK = '#SESSION.Auth.CompID#' 
</cfquery>

<cfquery name="rsAllDay" dbtype="query">
  SELECT *
  FROM rsAll
  WHERE  DateSent  = <cfqueryparam value="2010-03-03" cfsqltype="cf_sql_date">
</cfquery>

1 Ответ

2 голосов
/ 02 января 2012

Функция MySQL date_format() возвращает строку, а не объект datetime, поэтому при выполнении запроса в ColdFusion вы будете использовать тип данных CF_SQL_VARCHAR вместо типа данных CF_SQL_DATE.Передаваемое значение должно точно соответствовать значению, возвращенному в первом запросе.

Другие соображения:

1) Используйте CFDUMP, чтобы отобразить результаты первого запросачтобы убедиться, что возвращаемые типы данных соответствуют вашим ожиданиям.

2) Используйте CFQUERYPARAM в предложении WHERE вашего первого запроса.

...