Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.09;
Скачать: CL | DM;

Вниз

Не могу выполнить выборку на NULL   Найти похожие ветки 

 
Shaman_ ©   (2005-08-29 14:19) [0]

Запрос вида SELECT * FROM TABLENAME WHERE FIELDNAME is NULL всегда возвращает пустой набор данных. Пробовал склонять условие выборки всеми пришедшими в голову способами и все бестолку. Записи удовлетворяющие условию в таблице присутствуют. Где я могу тупить?
база на MySQL


 
Sergey13 ©   (2005-08-29 14:21) [1]

Может там нет НУЛ-овых значений?


 
afanasic   (2005-08-29 14:21) [2]

А тип FieldName какой - вполне может быть для строковых типов, что поле не пустое, а заполнено - например пробелами...


 
afanasic   (2005-08-29 14:23) [3]

Для примера явно сделай

update TableName set FieldName = null where code = RecCode

и повтори выборку...


 
Shaman_ ©   (2005-08-29 14:24) [4]

Sergey13:
Знал что это всеравно спросят :)
Значения с null есть, это 100%

afanasic:
Поле integer типа


 
Shaman_ ©   (2005-08-29 14:29) [5]

Для примера явно сделай
update TableName set FieldName = null where code = RecCode
и повтори выборку...

Что записи с null значением есть видно через выборку или любой dbeditor но на всякий случай пробовал и переписывать на значение на null еще раз. Записи с null значениями есть, я еще не совсем плохой чтобы здесь ошибаться. Нужно копать в другом месте


 
afanasic   (2005-08-29 14:31) [6]

Исходные данные
1. Число записей в таблице > 0
2. Число записей с полем FieldName = null > 0
3. Запрос select * from TableName where FieldName is null возвращает  пустой набор данных

Выводы:
1. НЕ ВЕРЮ...


 
afanasic   (2005-08-29 14:37) [7]

А поле NULLABLE?


 
Shaman_ ©   (2005-08-29 14:39) [8]

Не работает со всеми полями integer типа. Проверил только что. С остальными типами работает нормально. Есть альтернативные методы выборки на null значения?


 
afanasic   (2005-08-29 14:59) [9]

Попробуй сделать
 
select
 abs(field_name)
from
 table_name


если выругается, то будем еще думать, а если вернет какое-то число, то постарайся записывать вместо NULL заведомо ложное значение и обрабатывай его в дальнейшем аналогично пустому...


 
Nikolay M. ©   (2005-08-29 15:02) [10]


> afanasic   (29.08.05 14:59) [9]
> Попробуй сделать
>  
> select
>  abs(field_name)
> from
>  table_name
>
> если выругается

А кто и, главное, почему должен ругаться?


> Shaman_ ©   (29.08.05 14:24) [4]
> Значения с null есть, это 100%

Откуда такая уверенность?


 
ANB ©   (2005-08-29 15:07) [11]

Имхо, если запрос с Is null ничего не вертает, значит нулловых записей нету. Ибо это стандарт SQL.


 
afanasic   (2005-08-29 15:17) [12]


> Nikolay M. ©  
> А кто и, главное, почему должен ругаться?


Да, действитедьно, ABS хладнокровен к Null-значениям...


 
Anatoly Podgoretsky ©   (2005-08-29 15:23) [13]

Что дадут три запроса
SELECT COUNT(*) FROM TABLENAME WHERE FIELDNAME is NULL
SELECT COUNT(*) FROM TABLENAME WHERE FIELDNAME is NOT NULL
SELECT COUNT(*) FROM TABLENAME


 
Shaman_ ©   (2005-08-29 15:35) [14]

После очередного подключения к базе, повис аппсервер. Пурезапустил и апп и mysql. Сейчас выборка на null работает :|
Или я тупил до зависания или перезапуск исправил гклюк



Страницы: 1 вся ветка

Текущий архив: 2005.10.09;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.031 c
4-1124080356
leonidus
2005-08-15 08:32
2005.10.09
В чем разнича между GetAsyncKeyState и GetKeyState?


1-1126866998
Lazarius
2005-09-16 14:36
2005.10.09
Простой отчет. Как???


14-1127240450
QuaziLamo
2005-09-20 22:20
2005.10.09
CSS


8-1112417822
Galiaf
2005-04-02 08:57
2005.10.09
Звуки в Delphi


1-1127216851
stals
2005-09-20 15:47
2005.10.09
Как обнаружить, что вставили дискету?