Я ищу лучший способ создать запрос на основе значений, представленных в форме в coldfusion.Создайте динамический cfquery, используя операторы if - ColdFusion
Я собирался создать его с помощью операторов <cfif>
, но приступил к запуску проблем с добавлением запятых после оператора AND, но не добавил, если его последний И в запросе. Также убедитесь, что первое предложение WHERE включено в запрос.
Смотрите мой пример ниже:
<cfquery name="reportInfo" datasource="DataSource1">
SELECT *
FROM Basic_Info
<cfif company_name NEQ "false">
WHERE Sold_to_Party = '#company_name#',
<cfelse>
WHERE Sold_to_Party != '',
</cfif>
<cfif user_type EQ "both">
<cfelseif user_type EQ "rittal">
AND Sold_to_Party != 'Distributor Submission',
<cfelseif user_type EQ "distro">
AND Sold_to_Party = 'Distributor Submission',
</cfif>
<cfif status NEQ "false">
AND Status = '#status#'
<cfelse>
AND Status != ''
</cfif>
ORDER BY ID
</cfquery>
Вы можете видеть, что я добавил ELSEIF заявления в так что я мог бы добавить такое же заявление, без запятой.
Почему вы используете запятых ?? Это недопустимый SQL. – haxtbh
Вы правы, я смешивал его с вставками. И именно поэтому я получил ошибку запятой. Как насчет части WHERE в заявлении? – Denoteone
Вы должны получить деталь 'WHERE', используя то, что у вас есть. – haxtbh