What is the difference between these queries

Поиск
Список
Период
Сортировка
От salah jubeh
Тема What is the difference between these queries
Дата
Msg-id 828595.84001.qm@web161519.mail.bf1.yahoo.com
обсуждение исходный текст
Ответы Re: What is the difference between these queries  (tv@fuzzy.cz)
Список pgsql-general

Query1
-- the first select return 10 rows
SELECT a, b
FROM table1 LEFT JOIN table2 on (table1_id = tabl2_id)
Where table1_id NOT IN (SELECT DISTINCT table1_id FROM table3)
EXCEPT
-- this select return 5 rows
SELECT a, b
FROM table1 LEFT JOIN table2 on (table1_id = tabl2_id)
Where table1_id NOT IN (SELECT DISTINCT table1_id FROM table3)
and  b ~* 'pattern'
-- the result is 5 rows

Query2
--this select return 3 rows
SELECT a, b
FROM table1 LEFT JOIN table2 on (table1_id = tabl2_id)
Where table1_id NOT IN (SELECT DISTINCT table1_id FROM table3)
and  b !~* 'pattern'

Why query1 and query2  return different set. note that query two return a subset of query1

В списке pgsql-general по дате отправления:

Предыдущее
От: "Sven Haag"
Дата:
Сообщение: Multiple Results with crosstab function
Следующее
От: AI Rumman
Дата:
Сообщение: pg_connect connection problem