|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
Здравствуйте. Написал такой запрос Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
При попытке выполнить выдается ошибка Invalid token. Dynamic SQL Error. SQL error code = -104. Token unknown - line 3, char 1. select. Не пойму в чем проблема, ведь судя по документации InterBase поддерживает вложенные запросы. Использую InterBase 2009 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 09:41 |
|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
Nick00, 1. Это реальный запрос или для того чтобы показать проблему? Потому что производна таблица тут на фиг не сдалась 2. Если дал таблице алиас, то его и надо использовать в условии связи, а не исходное имя таблицы 3. Называть поле ключевым словом date как минимум не разумно 4. Ты путаешь подзапросы и производные таблицы (Derived Tables), последние появились только в Interbase 2017 Если прям без Derived Tables вы прожить не можете, то либо обновляйте IB за денюжку, либо переходите на Firebird ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 09:56 |
|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
Запрос привел для демонстрации проблемы. Не подскажешь как можно посчитать число записей в подобном запросе с выборкой нескольких полей в моей версии InterBase? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 10:03 |
|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
Nick00, даже там где Derived Tables есть, твой запрос не делает, то что ты хочешь. Отдельно считай COUNT, отдельно выбирай набор записей. По другому никак. Всяких там оконных функций, которые могу это в IB тоже нет ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 10:09 |
|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
Симонов Денис, Так я же хочу узнать число записей в результате выполнения запроса на выборку. Как я отдельно могу от него посчитать COUNT? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 10:17 |
|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
Nick00 Так я же хочу узнать число записей в результате выполнения запроса на выборку. Как я отдельно могу от него посчитать COUNT? А чем не устраивает Код: plsql 1. 2. 3. 4. 5. 6. 7.
Или я чего-то не вижу? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 10:35 |
|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
Nick00, 1. выполнить в той же SNAPSHOT транзакции подобный запрос, только вместо списка полей написать COUNT(*) 2. Запихать оба запроса внутрь ХП и сделать выборку из неё 3. На клиенте сделать FetchAll и посчитать количество отфетченных записей 4. Перейти на Firebird 3.0 или лучше 4.0 и использовать COUNT(*) OVER() можно и ещё варианты придумать ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 10:38 |
|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
m7m, а ему надо одновременно значения полей получить и количество записей которые вернул запрос ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 10:40 |
|
Ошибка в запросе
|
|||
---|---|---|---|
#18+
>Как я отдельно могу от него посчитать COUNT? Если транзация не снапшот, то отдельный каунт может и погоду на марсе показать. Сфетчить все записи и подсчитать сколько сфетчилось? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2021, 10:43 |
|
|
start [/forum/topic.php?fid=40&gotonew=1&tid=1559911]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
12ms |
get first new msg: |
7ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 156ms |
0 / 0 |