2015-09-17 1 views
0

Как правильно сформированный оператор CASE с синтаксисом CRYSTAL. Я создаю поле международного флага в отчете, чтобы показать, является ли номер заказа международным заказом или внутренним заказом, и отчет должен показывать тип заказа «Международный» или «Внутренний» в поле на основе фрагмента кода ниже.Критическое выражение CASE с примером SQL с использованием синтаксиса CRYSTAL

Вот пример SQL того, чего я пытаюсь выполнить.

Select 
    CASE 
    WHEN order.no like '6%' then 'International' 
    Else "Domestic" 
    END 
from Orders 

В настоящее время я пытался

select {Command.order_no} 
case is like '6%' : "International" 
default : "Other" 

Но я получаю ошибку

«Один из операторов сравнения <, < =,> или> = ожидается здесь. `

+0

дела, не сазе ... – jarlh

+1

Спасибо за советование Jarlh, я редактировал вопрос. – Hector

+1

Вы можете использовать инструкцию IF? – Beth

ответ

1

Если у вас есть только два варианта, используйте синтаксис IF i nstead. У Crystal есть хороший встроенный файл справки для вопросов синтаксиса. Кроме того, убедитесь, что при копировании из примера вы используете в качестве примера тот же синтаксис (Crystal или BASIC). В этом случае это синтаксис Crystal, поэтому, если у вас установлен синтаксис BASIC, он не будет компилироваться.

Попробуйте оператор IF, как это: выражение

if left({Command.order_no},1) = '6' then 
     "International" 
    else 
     "Other" 
+0

у меня есть и фактически нашел этот точный пример. Однако, когда я его реализую, я получаю ошибку, показанную выше. «Один из операторов сравнения <,<=,> или> = ожидается здесь.» – Hector

+0

, какую версию Crystal вы используете? Также есть два варианта синтаксиса: Crystal и BASIC. вы используете синтаксис Кристал? – Beth

+0

Я использую кристалл Reprots XI и Кристал синтаксис – Hector

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