Форум: "Базы";
Текущий архив: 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.47 MB
Время: 0.016 c