Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
29.01.2010, 08:31
|
|||
---|---|---|---|
Select вопрос |
|||
#18+
SELECT IIF(.T.,0,MAX(zakaz_ar.ag)) AS ag FROM zakaz_ar Почему выдаёт ошибку? И как сделать, чтоб не было ошибки.... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 08:58
|
|||
---|---|---|---|
|
|||
Select вопрос |
|||
#18+
q1w1e1, выполнил запрос на своей таблице. Селект честно отдал 0, как и ожидалось. Никакой ошибки не было, что я делаю не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 09:08
|
|||
---|---|---|---|
Select вопрос |
|||
#18+
SELECT MAX(IIF(.T.,0,zakaz_ar.ag)) AS ag FROM zakaz_ar ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 09:08
|
|||
---|---|---|---|
Select вопрос |
|||
#18+
Извиняюсь, не совсем корректно задал вопрос, дело в том, что в таблице zakaz_ar, нет поля ag, под этим псевдонимом выступает другая таблица, с другими полями, поэтому и хотелось бы знать, если в этой таблице нет каких-то определённых полей то 0, иначе суммирование по эти полям... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 09:13
|
|||
---|---|---|---|
Select вопрос |
|||
#18+
q1w1e1, вместо "иначе суммирование по эти полям", хотел написать "иначе MAX по эти полям", правда без разницы, всё равно агрегативные функции... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 09:27
|
|||
---|---|---|---|
Select вопрос |
|||
#18+
Пятница? Трудная неделя? local lcField FOR i=1 TO FCOUNT('tMyTable') IF LOWER(FIELD(i))=='ag' lcField=.T. exit ENDIF ENDFOR if lcField SELECT MAX(zakaz_ar.ag) AS ag FROM tMyTable endif ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 09:31
|
|||
---|---|---|---|
Select вопрос |
|||
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 10:00
|
|||
---|---|---|---|
Select вопрос |
|||
#18+
Да я всё это понимаю... :(, и в этом коде if llField SELECT MAX(zakaz_ar.ag) AS ag FROM tMyTable ENDIF Надо поставить "ELSE" , и потом если что-то исправить, то править надо уже два SELECT(а), вероятность ошибки возрастает, хорошо если они рядом, а если разнесены ужасно много строчным кодом...да вы сами всё понимаете, поэтому и хотелось бы всю эту конструкцию иметь в одном SELECt(е), а не делать проверку на наличие поля, а затем уже от этого значения, или так или так, выполнять SELECT, поэтому и подумал воспользоваться IIF(ом) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 10:01
|
|||
---|---|---|---|
|
|||
Select вопрос |
|||
#18+
С вашего позволения рехтану немного ..? и если я правильно понял топикастера :) Код: plaintext 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 10:10
|
|||
---|---|---|---|
|
|||
Select вопрос |
|||
#18+
q1w1e1, Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 10:51
|
|||
---|---|---|---|
Select вопрос |
|||
#18+
Шестипалов, поля checked_field точно нет в таблице mytable, и не выдаёт ошибки? Конструкция IF FIELD(i)=='AG' SELECT MAX(ag) ag FROM <MyTable> ELSE SELECT MAX(cast(0 as <Тип поля AG>)) ag FROM <MyTable> ENDIF тоже не подходит, надо IIF() в одном SELECT ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.01.2010, 10:52
|
|||
---|---|---|---|
|
|||
Select вопрос |
|||
#18+
констатация: шибсдец. ну до кучи порезвитесь над функцией fsize ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=41&mobile=1&tid=1585642]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 328ms |
total: | 464ms |
0 / 0 |