2014-02-14 5 views
0

Использование ColdFusion Server Enterprise 9,0,1,274733.Непоследовательность Q Q-поведения

Кто-нибудь видел это раньше? Следующий код выполняется без ошибок.

<cfquery name="x" datasource="dw"> 
select event_code, event_name 
from event 
</cfquery> 

<cfquery name="y" dbtype="query"> 
select event_code || event_name fred 
, event_code 
from x 
</cfquery> 

Две вещи, которые следует заметить, это то, что я объявила псевдоним без использования ключевого слова «как», и я использовал || для конкатенации строк. Тем не менее, если я право первого кода события, как это:

<cfquery name="y" dbtype="query"> 
select x.event_code || event_name fred 
, event_code 
from x 
</cfquery> 

Я получаю

запросов запросов синтаксических ошибок.

Encountered ". Неверный список выбора, неправильный столбец select, x.event_code не может следовать '||'

Существует подобная ошибка, если я пытаюсь объявить псевдоним без ключевого слова «как».

Для выполнения этой задачи под рукой, я могу понять, что делать, но мне интересно, если то же самое случается с теми из вас на 10-ой версии?

Edit начинается здесь

После прочтения комментариев, я попытался круглые скобки. Это выполняется без ошибок.

<cfquery name="y" dbtype="query"> 
select (x.event_code || event_name) fred 
, event_code 
from x 
</cfquery> 
+0

одно и то же происходит на CF10, но работает в Railo 4, но вы можете сделать 'ВЫБРАТЬ A + B AS test' в ColdFusion 10 –

+0

звучит как Жук. Он работает под CF9, если вы заключите оба в скобках, то есть 'select x.event_code || x.event_name) AS fred ... '. @MattBusche. Вы видите, что это верно для CF10? Я не рядом с установкой CF10. – Leigh

+0

@ Закрыто в '()' работает в CF10 –

ответ

3

Вы должны обернуть заявление в () для того, чтобы правильно работать

SELECT (x.event_code || event_name) fred 
+0

Первый образец вызовет аналогичную ошибку. –

+0

ах, я полностью игнорирую 'x.', когда я тестировал, поэтому выглядит как @Leigh, ваш ответ был действительно единственным правильным, извините за это –

+0

А, не беспокойтесь. Я не хотел писать ответ. Это было скорее любопытство :) – Leigh

Смежные вопросы