Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];

Вниз

Не могу выполнить выборку на 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.012 c
14-1126986860
Мексиканец
2005-09-17 23:54
2005.10.09
Заметил странный факт


3-1125252147
SergP
2005-08-28 22:02
2005.10.09
Увеличение размера базы ACCESS после открытия представления


14-1127011917
Body
2005-09-18 06:51
2005.10.09
Физика


2-1125536397
Angel123
2005-09-01 04:59
2005.10.09
Кому не трудно, помогите с кодом


2-1125732058
Гость22
2005-09-03 11:20
2005.10.09
Как подключиться к серверу Firebird?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский