|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Извините, пожалуйста, не имею опыта написания запросов в IB/FB То есть я могу написать запрос на T-SQL, но он семантически отличается от IB/FB никак не могу понять как запрос нужно интерпретировать. Имею запрос на T-SQL Код: sql 1. 2. 3. 4. 5.
иными словами, у меня есть переменная, значение которой я задаю визуально. Далее от этой переменной идут подзапросы с вложениями и с использованием полученных переменных в подзапросах. Что-то я совсем не могу ладу дать. Вроде должно быть похоже, однако в IB/FB совсем иначе объявляются переменные, иначе они применяются из запроса в переменную, и ... что-то я запутался с begin/end Спасибо за помощь огромное ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 12:57 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
имею FB версии 2,5... если я правильно понимаю по ..firebird250\fbclient.dll ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 13:02 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Код: sql 1. 2.
Прочая мелкомягкая чушь не нужна. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 13:11 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Я привел примитивный запрос в качестве примера В реалии он имеет 18 запросов, которые каскадно получают значение и спускаются дальше. Каждый запрос имеет от 3 до 12 таблиц в джоинах. В общем там все не просто. нагромождать в один - была мысль, но я от нее отказался. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 13:13 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Двоичник, Вот так, "накапливать" в скрипте, ФБ не умеет, у него нет "скриптовых переменных". Параметры в запросы можно передавать только в каком-то приложении - Дельфи, .net, C#, C++, perl, php, и так далее. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 13:16 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Двоичник, RTFM EXECUTE BLOCK ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 13:18 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Двоичник В реалии он имеет 18 запросов, которые каскадно получают значение и спускаются дальше. Если да, то это не к FB - FB не работает с батчами и возвращает один resultset с заранее определённой стр-рой. Если же resultset один, то либо execute block, либо таки один монстр-запрос с использованием CTE. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 13:22 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Двоичник Dimitry Sibiryakov, Я привел примитивный запрос в качестве примера В реалии он имеет 18 запросов, которые каскадно получают значение и спускаются дальше. Каждый запрос имеет от 3 до 12 таблиц в джоинах. В общем там все не просто. нагромождать в один - была мысль, но я от нее отказался. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 13:25 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Двоичник Dimitry Sibiryakov, Я привел примитивный запрос в качестве примера В реалии он имеет 18 запросов, которые каскадно получают значение и спускаются дальше. Каждый запрос имеет от 3 до 12 таблиц в джоинах. В общем там все не просто. нагромождать в один - была мысль, но я от нее отказался. Правильней нагромождать. Но если религия не позволяет, то: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Как-то так. Список переменных надо самому написать (во втором селекте надо делать присвоения локальным переменным значения полей из таблиц). Ну и переменные хранимки надо правильно объявить (входные, выходные). Реально это не очень удобно. Лучше нагромождать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 13:29 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Есть разница между "скрипт" и "хранимая процедура", не надо их мешать в кучу - получится каша. Двоичник должно быть похоже Двоичник совсем иначе объявляются переменные Двоичник применяются из запроса в переменную Двоичник запутался с begin/end Таки разница есть, резалтсет процедуры, как выше уже говорилось, только один, зато его можно джойноть. Программист потребуется, автозаменой не перегонишь из скрипта M$SQL в хранимую процедуру FB. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 14:56 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
KreatorXXI, Что-то у меня не получается с последним запросом, где должно выдать результат выборки селективной, на основании полученного параметра из каскадов запросов ранее ругается то на do , то на ; Признаюсь, мне совсем не ясна конструкция: do begin suspend end; Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 14:57 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
langref читал? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 15:04 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Значит настало время почитать-таки Lаnguage Reference из прикреплённых тем. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 15:06 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
Двоичник, во-первых, почитай про suspend. Во-вторых, можно начать с малого. Вот пример, который у меня работает. Поставь только свою таблицу вместо моей. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 15:57 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
KreatorXXI, Код: sql 1. 2. 3.
select * from HerTable where amount = @a последним шагом делается выборка из таблицы, где фильтр устанавливается на параметр. Спасибо за отзывчивость ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 16:54 |
|
Нужна помощь в написании запроса (партировать от T-SQL)
|
|||
---|---|---|---|
#18+
ДвоичникПризнаюсь, мне совсем не ясна конструкция: читайте http://www.ibase.ru/sp_call/ часть про "селективные процедуры". В execute block то же самое. Execute block - это аналог, так сказать, НЕхранимая процедура. http://www.ibase.ru/files/firebird/langref25rus/index.html#dml-execblock ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 17:34 |
|
|
start [/forum/topic.php?fid=40&msg=40095982&tid=1559944]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
others: | 257ms |
total: | 429ms |
0 / 0 |