|
|
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
В схеме программы составляются запросы к серверу, возвращающие все записи по всем полям таблицы. Но есть случай, когда вместо значений одного из полей надо вернуть нолики, но так, чтобы результат все равно включал название этого поля (потому как дальше запрос автоматизированно уходит в Бэтчмув и тот заполняет полученным парадоксовую таблицу... Пытался я изобразить что-то вроде SELECT CASE WHEN ID1 THEN 0 ELSE * END FROM Table1 В смысле, чтобы получилось. ID0 ID1 1 0 2 0 3 0 4 0 Просто в данный момент работают операции позаписного обнуления в программе, а это очень долго :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 15:28:43 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 15:32:28 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
да и еще (из любопытства)... а где используются таблицы парадокс? вроде рудимент такой.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 15:34:33 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
2 Mice: Спасибо за вариант, его проблематичность в том, что список полей, помимо обнуляемого, может быть незивестным, да плюс еще и ужасно длинным, так что перечислять замучаешься... Ну а Парадокс... Знаете, когда система была сделана 5 лет назад, и ею пользуется масса народу, которая имеет диалаповый коннект... Они просто не поймут, когда всю систему попытаешься сразу обновить. Поэтому постепенно переходим к хранению на сервере данных в SQL (раньше они тоже только в парадоксе были), а уж для клиентов предусматриваем совместимость. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 16:11:43 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
То есть, грубо говоря, в существующих вариантах не устраивает то, что поле ID1 встретится в запросе дважды - с 0 и с действительным значением :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 16:16:16 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
только через временную таблицу.... тип того... Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 17:56:04 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
А ускорит ли это работу? При обороте примерно в 2000 записей? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 18:01:33 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
2000 это не много... да ускорит.... если сравнивать с селектом то нет, примерно столько же.... а вот по сравнению с курсорами намного быстрее... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2002, 09:00:36 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
Сорри а вариант COALESCE([Table].[поле],0)) AS Поле2 Не катит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2002, 09:14:20 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
Queen представь себе табличку с парой десятков полей... раньше было select * from tablename... как только появился id - нужно перечислить все остальные поля..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2002, 09:21:47 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
А что, никогда не известно, какие и сколько будет полей ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2002, 09:56:33 |
|
||
|
Как при выполнении запроса под одним из его полей вернуть просто 0?
|
|||
|---|---|---|---|
|
#18+
я думаю что известно сколько полей и их типы, но их много... З.Ы. почти на всех серверах есть возможность работы с метаданными, но это к вопросу написания универсальных процедур.... а вот если нуно быстро что-то слепить то я думаю что приведенный выше способ удобен простотой... (если объем данных не высок кнечно...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2002, 11:38:04 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32039473&tid=1821484]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 234ms |
| total: | 370ms |

| 0 / 0 |
