select * where null not in (select ...)

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
Andrew Sagulin
Сообщения: 53
Зарегистрирован: 11 мар 2005, 15:44

select * where null not in (select ...)

Сообщение Andrew Sagulin » 25 май 2006, 16:15

FB 1.5.3

Код: Выделить всё

create table tst1 (
  f1 char(6) not null primary key,
  f2 char(6)
);

insert into tst1 values('f1', 'f2')

select rdb$description from rdb$database;

  RDB$DESCRIPTION
=================
           <null>

select count(*) from rdb$database where rdb$description not in (select f1 from tst1);

      COUNT
===========
          1

select count(*) from rdb$database where rdb$description not in (select f2 from tst1);

      COUNT
===========
          0

select count(*) from rdb$database where rdb$description not in ('1', '2');

      COUNT
===========
          0

Собственно, а как должно быть? :?

dimitr
Разработчик Firebird
Сообщения: 888
Зарегистрирован: 26 окт 2004, 16:20

Сообщение dimitr » 25 май 2006, 17:35

должно быть не так. Этому багу сто лет в обед.

Andrew Sagulin
Сообщения: 53
Зарегистрирован: 11 мар 2005, 15:44

Сообщение Andrew Sagulin » 25 май 2006, 20:59

dimitr писал(а):Этому багу сто лет в обед.
Мило. А в 2.0 исправили?

dimitr
Разработчик Firebird
Сообщения: 888
Зарегистрирован: 26 окт 2004, 16:20

Сообщение dimitr » 25 май 2006, 23:08

исправлено в последних снапшотах

Ответить