08.03.2006, 19:23 | #1 |
Участник
|
like запрос с использованием query
Здравствуйте, Уважаемые!
Подскажите, пожалуйста, можно ли построить sql-запрос с использованием like на основе query классов. Что-то вроде: Код: Table1 t1; Table2 t2; select t1 join t2 where t1.Field1 like t2.Field1; Код: qbds = q.addDataSource(tablenum(Table1), 't1'); qbds1 = qbds.addDataSource(tablenum(Table2), 't2'); qbds1.addRange(fieldnum(table2, field1)).value('(t1.Field1) like (t2.Field1)'); Заранее спасибо! |
|
09.03.2006, 06:03 | #2 |
Участник
|
Цитата:
Сообщение от Vadik Shiryakoff
Возможно ли вообще построение like запросов с использованием query или это нереально?
http://axapta.mazzy.ru/lib/search/ |
|
09.03.2006, 12:08 | #3 |
Участник
|
ну почемуж, ведь можно так
PHP код:
|
|
09.03.2006, 12:18 | #4 |
Moderator
|
2Ashir:
Это понятно, но вопрос в том, как сделать связку 2-х полей через like. А вот это действительно не получится сделать через query.
__________________
Андрей. |
|
|
За это сообщение автора поблагодарили: Lucky13 (1). |
09.03.2006, 13:30 | #5 |
Участник
|
извиняюсь за невнимательность
|
|
09.03.2006, 13:32 | #6 |
Участник
|
вообще бы нужны еще одни скобки
X++: qbds1.addRange(fieldnum(table2, field1)).value('((t1.Field1) like (t2.Field1))'); |
|
10.03.2006, 13:17 | #7 |
Участник
|
Пробовали, еще одни скобки не помогали - в этом случае выдается ошибка типа "Query extended range failure: Right parenthesis expected near pos 19."
|
|
13.03.2006, 12:05 | #8 |
MCTS
|
Не знаю как выражение like (не пробовал и не исследовал), но если уж очень необходимо "развить" свой запрос, в условиях когда стандартным addRange уже "слов не хватает", вот работающий пример:
q.dataSourceNo(2).addRange(fieldNum(PriceDiscTable, RecId)).value( strFmt("((" + fieldStr(PriceDiscTable, FromDate) + "<= %1) && ((" + fieldStr(PriceDiscTable, ToDate) + ">= %1) || (" + fieldStr(PriceDiscTable, ToDate) + "= %2) ))", date2StrXpp(valueTransDate), date2StrXpp(DateNull() ))); Данный пример реализует следующее выражение: (priceDiscTable.fromDate <= transDate && (priceDiscTable.toDate >= transDate || !priceDiscTable.toDate)) Обрати внимание, на то что в данном случае привязка начинает "плясать" от RecId. Поле RecId в данном случае выбрано как самое "нейтральное".
__________________
В глухомани, в лесу Несмотря на красу Дни проводит Лиса Патрикевна. Я никак не пойму Отчего, почему Не пускают куму На деревню |
|
|
За это сообщение автора поблагодарили: decoder (1). |
|
Похожие темы | ||||
Тема | Ответов | |||
palleagermark: Sample union query from AX 2009 | 0 | |||
Передача параметра в Запрос(Query) | 5 | |||
Ручной запрос: как указать Like? | 5 | |||
Dynamics AX Geek: Using query() | 0 | |||
query и like ... | 1 |
|