Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Пустой результат запроса с использованием NOT Exists. Помогите разобраться... / 19 сообщений из 19, страница 1 из 1
20.11.2013, 17:29:22
    #38471604
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Добрый вечер уважаемые знатоки SQL ) Появилась у меня проблема и она в следующем:
есть запрос, который должен из некой базы выбрать номера телефонов не звонивших после 15 октября, но звонивших в период с 1 сентября до 15 октября: вот запрос:

select distinct a.cid_tel
from arch a
where a.d_pzakaz>'01.09.2013' and a.d_pzakaz<'15.11.2013' and a.beznal=0 and a.cid_tel is not null and a.channel=2 and
char_length(a.cid_tel)=11 and
a.cid_tel like '89%' and not exists ( select a.cid_tel
from arch a
where a.d_pzakaz>'1.09.2013' and a.d_pzakaz<'15.10.2013' and a.beznal=0 and a.cid_tel is not null and a.channel=2 and
char_length(a.cid_tel)=11 and
a.cid_tel like '89%' )
group by a.cid_tel

Запрос возвращает null, если убрать not, то значения выводятся...подскажите в чем я был не прав :) Заранее спасибо :)
...
Рейтинг: 0 / 0
20.11.2013, 17:57:03
    #38471641
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Было сделано потому что не нашлось команды except )
...
Рейтинг: 0 / 0
20.11.2013, 18:01:36
    #38471650
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Запрос - полный бред ...
Первая часть выбирает звонки с 1 по 15, и в not exists тоже самое.
В итоге ни одной записи не будет.
И еще - где связь между первой таблицей и второй??? Не говоря уже о одинаковых алиасах таблиц...
...
Рейтинг: 0 / 0
20.11.2013, 18:03:08
    #38471652
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
при изменении алиасов запрос зависает намертво....ждал минут 15 ((( В запросах разные месяца...в одном ноябрь в другом октябрь...
...
Рейтинг: 0 / 0
20.11.2013, 18:03:57
    #38471656
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Собственно было сделано по мотивам:
http://www.sql.ru/forum/851940/est-li-v-firebird-analog-operatora-except-sql
...
Рейтинг: 0 / 0
20.11.2013, 18:07:28
    #38471663
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
А вот такая конструкция где в Вашем запросе ?
Код: sql
1.
table2.id = table1.id
...
Рейтинг: 0 / 0
20.11.2013, 18:11:26
    #38471674
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Вот для понимания
...
Рейтинг: 0 / 0
20.11.2013, 18:14:47
    #38471675
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Сорри за тупость :) Но вот:

select distinct a.cid_tel
from arch a
where a.d_pzakaz>='15.10.2013' and a.d_pzakaz<='15.11.2013' and a.beznal=0 and a.cid_tel is not null and a.channel=2 and
char_length(a.cid_tel)=11 and
a.cid_tel like '89%' and not exists ( select b.cid_tel
from arch b
where b.d_pzakaz>'01.09.2013' and b.d_pzakaz>'15.10.2013' and b.beznal=0 and b.cid_tel is not null and b.channel=2 and char_length(b.cid_tel)=11 and b.cid_tel = a.cid_tel)
group by a.cid_tel

Запрос зависает (((
...
Рейтинг: 0 / 0
20.11.2013, 18:20:07
    #38471691
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
SELECT 1 - Тоже не работает :(
...
Рейтинг: 0 / 0
20.11.2013, 18:58:09
    #38471779
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
up
...
Рейтинг: 0 / 0
20.11.2013, 19:06:52
    #38471794
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Hello, alex.xandro!
You wrote on 20 ноября 2013 г. 19:05:41:

alex.xandro> Запрос зависает (((
запрос зависнуть не может.
это не виндовс.

работать долго может, да.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
20.11.2013, 19:18:51
    #38471819
m7m
m7m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
alex.xandroСорри за тупость :) Но вот:

select distinct a.cid_tel
from arch a
where a.d_pzakaz>='15.10.2013' and a.d_pzakaz<='15.11.2013' and a.beznal=0 and a.cid_tel is not null and a.channel=2 and
char_length(a.cid_tel)=11 and
a.cid_tel like '89%' and not exists ( select b.cid_tel
from arch b
where b.d_pzakaz>'01.09.2013' and b.d_pzakaz>'15.10.2013' and b.beznal=0 and b.cid_tel is not null and b.channel=2 and char_length(b.cid_tel)=11 and b.cid_tel = a.cid_tel)
group by a.cid_tel

Запрос зависает (((
Красненьким отмечено лишнее (по моему мнению)

План запроса покажи
...
Рейтинг: 0 / 0
20.11.2013, 19:48:05
    #38471876
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
alex.xandroзапрос, который должен из некой базы выбрать номера телефонов не
звонивших после 15 октября, но звонивших в период с 1 сентября до 15 октября
Это вообще-то делается без подзапросов:
Код: sql
1.
2.
3.
select a.cid_tel from arch a
group by a.cid_tel
having max(a.d_pzakaz) between date'1.9.2013' and date'15.10.2013'


Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
20.11.2013, 19:58:33
    #38471889
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Dimitry Sibiryakovalex.xandroзапрос, который должен из некой базы выбрать номера телефонов не
звонивших после 15 октября, но звонивших в период с 1 сентября до 15 октября
Это вообще-то делается без подзапросов:
Код: sql
1.
2.
3.
select a.cid_tel from arch a
group by a.cid_tel
having max(a.d_pzakaz) between date'1.9.2013' and date'15.10.2013'





А как это будет работать??? Задача в том чтобы вывести телефоны клиентов тз таблицы arch, которые перестали звонить после 15.10......
...
Рейтинг: 0 / 0
20.11.2013, 19:59:55
    #38471890
m7m
m7m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Dimitry Sibiryakov,

++ целая куча :) :) :)

ps/ минут 5 врубался в запрос, а потом мысля как-же сам не догадался до такого
...
Рейтинг: 0 / 0
20.11.2013, 20:02:17
    #38471895
m7m
m7m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
alex.xandroА как это будет работать??? Задача в том чтобы вывести телефоны клиентов тз таблицы arch, которые перестали звонить после 15.10......
ну где-то вот так
выбрать всех кто звонил последний раз в период с 1 сентября до 15 октября
...
Рейтинг: 0 / 0
20.11.2013, 20:15:46
    #38471913
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Спасибо...завтра вечером потестю )))
...
Рейтинг: 0 / 0
20.11.2013, 20:15:49
    #38471914
alex.xandro
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
Dimitry Sibiryakovalex.xandroзапрос, который должен из некой базы выбрать номера телефонов не
звонивших после 15 октября, но звонивших в период с 1 сентября до 15 октября
Это вообще-то делается без подзапросов:
Код: sql
1.
2.
3.
select a.cid_tel from arch a
group by a.cid_tel
having max(a.d_pzakaz) between date'1.9.2013' and date'15.10.2013'





А как это будет работать??? Задача в том чтобы вывести телефоны клиентов тз таблицы arch, которые перестали звонить после 15.10......
...
Рейтинг: 0 / 0
21.11.2013, 12:40:35
    #38472751
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пустой результат запроса с использованием NOT Exists. Помогите разобраться...
alex.xandroА как это будет работать???вот так:
alex.xandroвывести телефоны клиентов тз таблицы arch, которые перестали звонить после 15.10Но звонили в период с 1 сентября. ;)
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Пустой результат запроса с использованием NOT Exists. Помогите разобраться... / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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