|
|
|
Проблема с sql запросом
|
|||
|---|---|---|---|
|
#18+
Добрый день, всем! Подскажите пожалуйста со следующим вопросом. Есть поле у меня datetime . Надо проверить его на пустоту. Вопрос очень несложный я понимаю, но что -то не могу понять. Т.е. хочу такое написать: where kart.dtsmp is not EMPTY() но это неправильно- выдает ошибку. и второе в этом же духе: это все должно быть, если второе текстовое поле больше равно 2019 года. т.е. второе поле - dtprov >= 2019 типа такого написать. Все в одном запросе. SELECT kart.*; from kart where kart.dtsmp is not EMPTY() and kart.dtsmp>= dtprov into smp.dbf Спасибо заранее большое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2019, 18:04 |
|
||
|
Проблема с sql запросом
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2019, 20:10 |
|
||
|
Проблема с sql запросом
|
|||
|---|---|---|---|
|
#18+
Использовать в условии WHERE функции можно, но не желательно, поскольку они, как правило, не оптимизируются. Т.е. будут тормозить запрос. В данном случае лучше использовать переменную. Даты вполне сравниваются на больше/меньше и, очевидно, не пустая дата всегда будет больше пустой Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2019, 20:45 |
|
||
|
Проблема с sql запросом
|
|||
|---|---|---|---|
|
#18+
Большое спасибо Дмитрий и Владимир! За детальное объяснение данного вопроса. Все понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2019, 07:42 |
|
||
|
Проблема с sql запросом
|
|||
|---|---|---|---|
|
#18+
Извинюсь, написал, что вроде бы понял, а нет. Есть вопрос. У меня выдается ошибка в запросе. SELECT kart.*; from kart ; where kart.dtsmp > m.emptyDate AND TTOD(kart.dtgosp) >= m.yearValue; я не очень понимаю тут: AND TTOD(kart.dtgosp) >= m.yearValue - ошибка в этой строке. kart.dtgosp - тип datetime yearValue = 2019 - строковый тип. Я и последний тип перегоняю в строковый тоже не отрабатывает. Т.е. у меня не работает (на правильно отрабатывает строка): AND TTOD(kart.dtgosp) >= m.yearValue т.е. выдают записи где год и 2016 и т.д. - что неверно. Подскажите пожалуйста. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2019, 08:13 |
|
||
|
Проблема с sql запросом
|
|||
|---|---|---|---|
|
#18+
dima_18я не очень понимаю тут: AND TTOD(kart.dtgosp) >= m.yearValue - ошибка в этой строке. kart.dtgosp - тип datetime yearValue = 2019 - строковый тип. при сравнении оба операнда должны быть одного типа, т.е. или yearValue числовой и берем год из даты Код: sql 1. или yearValue должно быть datetime Код: sql 1. 2. 3. Вместо <year> подставь переменную откуда год берется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2019, 08:57 |
|
||
|
|

start [/forum/search_topic.php?author=%D0%A1%D0%B5%D1%80%D0%B3%D0%B5%D0%B9+%D0%95&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
55ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 442ms |
| total: | 610ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...