Преобразование PBSELECT Query в стандартный запрос SQL

Я хочу преобразовать сгенерированный Powebuilder запрос в стандарт Sql, я пробовал и делал, но у меня есть сомнения в нескольких моментах.

ЭЛЕКТРОПРОМЫШЛЕННЫЙ ЗАПРОС:

 PBSELECT( VERSION(400) TABLE(NAME=~"part~" ) 
       COLUMN(NAME=~"part.part_no~") 
       COLUMN(NAME=~"part.part_id~")
       WHERE(EXP1 =~"part.part_no~" OP =~"=~" EXP2 =~":p_part_no~" ) ) 
       ARG(NAME = ~"p_part_no~" TYPE = string)"

Стандартный SQL-запрос:

SELECT 
    part.part_no ,
    part.part_id FROM part  
    WHERE :EXP1 = part.part_no  OR :EXP2 =  p_part_no

Я преобразовал этот запрос, но я не могу понять переменные: EXP1, EXP2 p_part_no & OP. Если я посмотрю на POWER BUILDER Query, то там будет только один аргумент, но тогда это EXP1, EXP2,p_part_no и OP, откуда приходят его значения.

Любое предложение и помощь будут оценены.

1 ответ

Решение

Пожалуйста, проверьте ваш стандартный sql (в пересчете)

Оператор = оператор для использования

Exp1 = левая сторона

Exp2 = правая сторона

Так что в вашем случае я бы ожидал, что преобразованный pbselect больше похож

выберите... где p_part_no =:p_part_no

построить из вашего данного заявления pbselect

В этом случае аргумент, который вы используете для получения, это p_part_no

В вашем конвертированном SQL вы показываете оператор "или" как... Этого нет в pbselect, так что я ожидаю, что вы могли бы смешать разные тесты?

Я не проверял это в pb, но могу сделать это, если это не правильный ответ.

Другие вопросы по тегам