powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как выбрать пустые строки(G0 is null or G0 = '')?
61 сообщений из 61, показаны все 3 страниц
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557714
Добрый день.

В табличке TST
DDL
Код: sql
1.
2.
3.
4.
5.
6.
CREATE TABLE TST (
    ID  INTEGER NOT NULL,
    G0  VARCHAR(10),
    G1  VARCHAR(10),
    G2  VARCHAR(10)
);



данные:
IDG0G1G21АБВ23<null>4<null><null><null>5АБВ6А<null><null>7<null>БВ
Нужно выбрать все строки, в которых значения полей g0, g1 и g2 были пустыми. "Пустые" - это либо null, либо "пустая строка" ('').

Вот так работает:
Код: sql
1.
2.
3.
4.
5.
select *
from TST T
where (G0 is null or G0 = '') and
      (G1 is null or G1 = '') and
      (G2 is null or G2 = '') 


вывод:

IDG0G1G223<null>4<null><null><null>
Вопрос: а нет ли для строк в FB чего-либо более компактного, чем G0 is null or G0 = '' , какой-нибудь конструкции IsEmptySTR... - ?
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557726
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NULLIF(G0, '') IS NULL
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557733
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
coalesce(G0,'') = ''
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557735
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скоро пятница> Вопрос: а нет ли для строк в FB чего-либо более компактного

Есть, и NULLIF, и коалеска, но они не индексируются. Так что лучше длиньше.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557742
Как бы не особо-то и компактнее, "прозрачнее":
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
select *
from TST T
where (G0 is null or G0 = '') and
      (G1 is null or G1 = '') and
      (G2 is null or G2 = '') 
...
where nullif(G0, '') is null and
      nullif(G1, '') is null and
      nullif(G2, '') is null
...
where coalesce(G0, '') = '' and
      coalesce(G1, '') = '' and
      coalesce(G2, '') = ''



Гаджимурадов Рустам...
Есть, и NULLIF, и коалеска, но они не индексируются. Так что лучше длиньше.

ОК
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557747
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять трололо...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557750
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IMHO, если у поля отсутствует смысл в NULL - делать поле изначально NOT NULL и тогда никаких таких извращений не понадобится.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557753
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Немного не по теме.

При оформлении запроса писать and удобнее в начале а не в конце.
Что бы любую строку в where можно было закомментарить - удобнее когда каждая строка начинается с and .
Но первая строка не может так начинаться, поэтому я пишу вот так:

Код: plsql
1.
2.
3.
4.
5.
6.
select *
from TST T
where (1=1)
  and (G0 is null or G0 = '')
  and (G1 is null or G1 = '')
  and (G2 is null or G2 = '')
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557754
fraksIMHO, если у поля отсутствует смысл в NULL - делать поле изначально NOT NULL и тогда никаких таких извращений не понадобится.
Это да. Но есть существующие системы.
...
PS: Интересно, почему для строк в СУБД не сделали пустое значение равным NULL. Именно для строк.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557755
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скоро пятницаPS: Интересно, почему для строк в СУБД не сделали пустое значение равным NULL. Именно для строк.
Потому что NULL и пустая строка - это разные вещи и для строк тоже.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557759
fraksНемного не по теме.

При оформлении запроса писать and удобнее в начале а не в конце.
Что бы любую строку в where можно было закомментарить - удобнее когда каждая строка начинается с and .
...
И насчет запятых - то же самое.
Но форматтер текста в IBExpert думает иначе, к сожалению. Возможно, его можно переучить, да вот не знаю как.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557764
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
22.11.2017 18:13, Скоро пятница пишет:
> Интересно, почему для строк в СУБД не сделали пустое значение равным NULL. Именно для строк.

переходи на оракел.
там это сделали.
изначально.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557765
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скоро пятницаfraksНемного не по теме.

При оформлении запроса писать and удобнее в начале а не в конце.
Что бы любую строку в where можно было закомментарить - удобнее когда каждая строка начинается с and .
...
И насчет запятых - то же самое.
Но форматтер текста в IBExpert думает иначе, к сожалению.
Ни разу не пользовался форматтером :)
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557769
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скоро пятница,
если вы считаете что пустая строка и значение null для вашей таблицы одинаковы - проведите замену постого значения на null и потом будет вам компактно и красиво.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557774
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скоро пятницаВопрос: а нет ли для строк в FB чего-либо более компактного, чем G0 is null or G0 = '' , какой-нибудь конструкции IsEmptySTR... - ?

Готовых нет. Но в Firebird 3 появилась возможность делать хранимые функции. Типа как хранимые процедуры но вызывать можно как функции.
И думаю что твоя "IsEmptySTR" будет состоять буквально из одной строки.
Правда с индексами в таких условиях будет все плохо...
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557775
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrush> проведите замену постого значения на null и потом будет вам компактно и красиво.

Это ж додуматься надо, потроллить ведь нечем будет.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557776
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrushСкоро пятница,
если вы считаете что пустая строка и значение null для вашей таблицы одинаковы - проведите замену постого значения на null и потом будет вам компактно и красиво.

Кстати да.
Если нельзя добавить NOT NULL на поле - можно сделать триггер заменяющий NULL на пустую строку.
Такое наверняка проканает и в существующих системах.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557787
m7m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скоро пятницаКак бы не особо-то и компактнее, "прозрачнее":
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
select *
from TST T
where (G0 is null or G0 = '') and
      (G1 is null or G1 = '') and
      (G2 is null or G2 = '') 
...
where nullif(G0, '') is null and
      nullif(G1, '') is null and
      nullif(G2, '') is null
...
where coalesce(G0, '') = '' and
      coalesce(G1, '') = '' and
      coalesce(G2, '') = ''




Хочется компактнее тогда вот так
Код: sql
1.
2.
...
where coalesce(G0||G1||G2, '') = ''
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557809
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m7mХочется компактнее тогда вот такНет
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39557816
m7m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шавлюк Евгенийm7mХочется компактнее тогда вот такНет

Ну да, таки ты прав
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558034
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий22.11.2017 18:13, Скоро пятница пишет:
> Интересно, почему для строк в СУБД не сделали пустое значение равным NULL. Именно для строк.

переходи на оракел.
там это сделали.
изначально.

Наверное, какие-то внутренние причины для разделения у разработчиков FB были, но с прикладной т.зр. - имхо, от разделения в строках (varchar) null и '' - один гемор.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558037
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДНаверное, какие-то внутренние причины для разделения у разработчиков FB были
у разработчиков ФБ причин не было. А у разработчиков ИБ были - стандарт sql и вообще правила РСУБД. Скорее, тут надо говорить про причины у разработчиков Оракла.
https://habrahabr.ru/post/127327/

"Если последовать завету классика и посмотреть в корень, то причину эквивалентности пуcтой строки и NULLа можно найти в формате хранения varchar`ов и NULLов внутри блоков данных. Oracle хранит строки таблицы в структуре, состоящей из заголовка, за которым следуют столбцы данных. Каждый столбец представлен двумя полями: длина данных в столбце (1 или 3 байта) и, собственно, сами данные. Если varchar2 имеет нулевую длину, то в поле с данными писать нечего, оно не занимает ни байта, а в поле с длиной записывается специальное значение 0xFF, обозначающее отсутствие данных. NULL представлен точно так же: поле с данными отсутствует, а в поле с длиной записывается 0xFF. Разработчики Оракла могли бы, конечно, разделить эти два состояния, но так уж издревле у них повелосью"

p.s. насколько я помню, даже у Парадокса в 1991-1993 годах было понятие "blank", т.е. null, для всех типов данных.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558042
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДНаверное, какие-то внутренние причины для разделения у разработчиков FB были

причём тут разработчики FB? NULL и пустая строка разные сущности ещё со времён Interbase
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558078
Василий №2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
*сарказм* Ага, а для чисел NULL сделать эквивалентным 0, чего сущности плодить
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558093
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Василий №2а для чисел NULL сделать эквивалентным 0*сарказм off* Не надо.

и для строк, кстати тоже не надо. Я бы хотел различать ситуации когда у меня пустая строка и когда я прицепил лефт джойном нечто а там нет строки совсем.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558108
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Стандарт" наверняка опирается на осмысленные причины.
Но вот конкретно я их не вижу.
А знание того, как там реализован механизм хранения строк - вещь интересная, но для "прикладника" - не обязательная.
...
Ну да, можно придумать, для чего прикладника фразличать null и ''. И даже получать от этого пользу.
Но гемора, имхо, больше, чем возможной пользы.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558138
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_PisarevskyЯ бы хотел различать ситуации когда у меня пустая строка и когда я прицепил лефт джойном нечто а там нет строки совсем.Ну хоть кто-то тут таки дружит с головой :)
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558200
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скоро пятницаВопрос: а нет ли для строк в FB чего-либо более компактного, чем G0 is null or G0 = '' , какой-нибудь конструкции IsEmptySTR... - ?Будь проще!
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
UPDATE TST
  SET G0 = NULLIF(G0, ''),
    G1 = NULLIF(G1, ''),
    G2 = NULLIF(G2, '')
  WHERE G0='' OR G1='' OR G2='';

ALTER TABLE TST ADD CONSTRAINT TST__CHK CHECK (NOT(G0='' OR G1='' OR G2=''));

SET TERM ^;
CREATE OR ALTER TRIGGER TST__TR_BIU
  FOR TST
  ACTIVE
  BEFORE INSERT OR UPDATE
  POSITION 0
AS
BEGIN
  NEW.G0 = NULLIF(NEW.G0, '');
  NEW.G1 = NULLIF(NEW.G1, '');
  NEW.G2 = NULLIF(NEW.G2, '');
END^
SET TERM ;^
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558280
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devСкоро пятницаВопрос: а нет ли для строк в FB чего-либо более компактного, чем G0 is null or G0 = '' , какой-нибудь конструкции IsEmptySTR... - ?Будь проще!
Код: sql
1.
2.
3.
4.
5.
UPDATE TST
  SET G0 = NULLIF(G0, ''),
    G1 = NULLIF(G1, ''),
    G2 = NULLIF(G2, '')
  WHERE G0='' OR G1='' OR G2=''; -- Тут кажется не совсем то что имелось ввиду 


Что? :)
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558302
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraksrdb_devпропущено...
Будь проще!
Код: sql
1.
2.
3.
4.
5.
UPDATE TST
  SET G0 = NULLIF(G0, ''),
    G1 = NULLIF(G1, ''),
    G2 = NULLIF(G2, '')
  WHERE G0='' OR G1='' OR G2=''; -- Тут кажется не совсем то что имелось ввиду 


Что? :)Меняем '' на NULL в полях "G" записей, где значение любого из полей "G" записи содержит пустую строку. Что не так?
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558315
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

уж проще 3 отдельных запроса выполнить и не страдать фигнёй

Код: sql
1.
2.
3.
UPDATE TST
  SET G0 = NULL
  WHERE G0=''; 



для остальных аналогично
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558317
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devfraksпропущено...

Что? :)Меняем '' на NULL в полях "G" записей, где значение любого из полей "G" записи содержит пустую строку. Что не так?

Вроде ТС NULLы мешались, а ты предлагаешь наоборот их насильно туда насовать.
Я бы понял если бы триггер NULL на '' менял, тогда условие на равенство любому значению строки, в том числе пустому проверялось бы одним условием на равенство. И всё было бы просто.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558346
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> уж проще 3 отдельных запроса выполнить и не страдать фигнёй

3 запроса или один - не суть (один даже лучше),
а вот пустые строки на NULL-ы менять глупо, да.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558384
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

менять NULL на пустые строки ещё хуже
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558404
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
23.11.2017 15:38, Симонов Денис пишет:
> менять NULL на пустые строки ещё хуже

YouTube Video
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558415
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_PisarevskyВасилий №2а для чисел NULL сделать эквивалентным 0*сарказм off* Не надо.

и для строк, кстати тоже не надо. Я бы хотел различать ситуации когда у меня пустая строка и когда я прицепил лефт джойном нечто а там нет строки совсем.
...или там есть нечто, но со строковыми полями, заполненными NULL-ами.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558425
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,

если сделал поле NOT NULL то нету
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558435
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисчччД,

если сделал поле NOT NULL то нету
[spoiler] ...
YouTube Video
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558447
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,

Для прикола выполни запрос

Код: sql
1.
2.
select iif('' = ' ', 1, 0) as f
from rdb$database



с null такое не проконает
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558449
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис...
с null такое не проконает
Это хорошо или плохо?
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558453
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,

это о том что пустая строка никак не заменяет NULL.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558454
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> менять NULL на пустые строки ещё хуже

Чем хуже? Армяне лучше чем грузины?

Симонов Денис> с null такое не проконает

Проканает, просто условие надо поменять.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558456
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> это о том что пустая строка никак не заменяет NULL.

Это кто-то утверждал?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558457
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

чем проконает то? Я пустую строку с пробелом сравнил
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558458
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

как кто. Тут в топике поднимают некоторые вопрос о том, что хорошо бы null и пустая строка было одно и то же
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558465
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> чем проконает то? Я пустую строку с пробелом сравнил

Молодец, чо. Не буду спрашивать зачем, это дело хозяйское.
Но в чем именно проблема сравнений с NULL ?

Симонов Денис> Тут в топике поднимают некоторые вопрос о том,
Симонов Денис> что хорошо бы null и пустая строка было одно и то же

Так ты смотри кто что говорит и кому ты что/на что отвечаешь.
ТС трололо своё закинул и доволен, но это не значит что и тебе надо.
Так чем армяне NULL-ы больше чем грузины пустые строки ?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558466
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Так чем армяне NULL-ы больше чем грузины пустые строки ?

"тебе больше нравятся"
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558467
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исправил:
Гаджимурадов РустамТак чем армяне NULL-ы большелудше чем грузины пустые строки ?
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558533
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДIvan_Pisarevskyпропущено...
*сарказм off* Не надо.

и для строк, кстати тоже не надо. Я бы хотел различать ситуации когда у меня пустая строка и когда я прицепил лефт джойном нечто а там нет строки совсем.
...или там есть нечто, но со строковыми полями, заполненными NULL-ами. Если я собираюсь различить 2 варианта, наверное я не стану предварительно стрелять себе в ногу.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558546
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну это ты не станешь. За всех не говори, тут есть мазохисты.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558766
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

Может, не мазохисты, просто по-другому не умеют.
Стрелять в ногу больно, но там уже есть дырка с прошлого раза, потому если в неё же стрелять, то вроде норм.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558779
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамНу это ты не станешь. За всех не говори, тут есть мазохисты.
Повнимательнее приглядись к условию задачи - ТС не делает различий между пустой строкой и NULL. Эту неопределенность, в данном, конкретном случае следовало бы устранить, что и было предложено. Никто не говорит, что решение с заменой пустой строки на NULL полезно всегда.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558870
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev> Повнимательнее приглядись к условию задачи - ТС

Нет никакого ТС и его "задачи". Это трололо, закинуло и
пошло жарить попкорн. Можно делать ставки, что сегодня
после обеда будет очередная порция.

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

Научись читать, что тебе пишут. Во-первых, это было предложено
(два варианта) ещё на первой странице, а во-вторых, даже в этом
случае заменять надо (если надо) в обратном направлении.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558940
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devГаджимурадов РустамНу это ты не станешь. За всех не говори, тут есть мазохисты.
Повнимательнее приглядись к условию задачи - ТС не делает различий между пустой строкой и NULL. Эту неопределенность, в данном, конкретном случае следовало бы устранить, что и было предложено.

ТС настолько пофиг на NULL что он был согласен не знать об его присутствии и хотел функцию которая бы уравнивала NULL с пустой строкой.

Я сам сталкивался с этим, при проектировании не сделал NOT NULL на поле где NULL нафиг не нужен, и потом вот так же прыгал при написании запросов. В конце-концов мне это надоело и там где не требуется знать про состояние NULL - тупо переделал поля на NOT NULL. И волосы сразу стали шелковистыми. Чего и вам желаю.

Еще раз.
Если по условиям задачи не требуется иметь возможность иметь в поле NULL - запретите его нафиг.
Решение задачи путем её отмены :)
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39558941
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Случаев когда мне существенно знать NULL или 0 - у себя припоминаю только один.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39559009
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks> Случаев когда мне существенно знать NULL или 0 -
fraks> у себя припоминаю только один.

Ну здрасьте. Для строк ещё можно завести в справочник "не задано"
(хотя не все поля - из справочника), а для чисел так не спляшешь.
Ну либо -1 задавать, но хрен редьки не слаще.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39559102
Василий №2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А я у себя в одном проекте а-ля картотека наоборот вытравил все пустые строки, заменив на Null. Даже компонеты EhLib подправил, чтобы не давали вводить пустую строку. Потому что на Null легче в отчетах проверять. Да и вообще. Не ввели значения - это NULL. А пустая строка - вообще непонятная сущность с т.зр. БД. Вроде как что-то есть, но ничего не значит...
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39559107
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Василий №2> на Null легче в отчетах проверять.

Ась?!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39559152
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не пойму я вас, Прохоровых. Ей - хорошо, тебе - нехорошо... (С)

Помойму с нуллом всё прозрачно до одури. В атрибутах, над которыми выполняется всякая арифметика-конкатенация, вреден, в признаках-указателях полезен. Ну так и думаем головой когда структуры проектируем.
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39559160
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый плюшевый мишка,

в неё едят и пьют, а не занимаются всякой, простихоспади, умственной деятельностью!
...
Рейтинг: 0 / 0
Как выбрать пустые строки(G0 is null or G0 = '')?
    #39560055
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
оффтоп: зато в 1С придумали что: и пустые ссылки и Неопределено и NULL.
...
Рейтинг: 0 / 0
61 сообщений из 61, показаны все 3 страниц
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как выбрать пустые строки(G0 is null or G0 = '')?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]