Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2008, 09:45   #1
Tanusha
Пользователь
 
Регистрация: 18.07.2008
Сообщений: 21
По умолчанию Составление запроса по звонкам (доработка)

Привет всем!! Подскажите в чем у меня ошибка:
есть уже знакомый запрос, по выборке одинаковых звонков:
SELECT *
FROM calls c1
WHERE phone_id = '53541' and datetime_call between '20080801' and '20080831' and ( SELECT COUNT(*)
FROM calls c2
WHERE c1.datetime_call = c2.datetime_call and c1.duration_sec = c2.duration_sec and c1.call_num = c2.call_num and c1.call_num_in = c2.call_num_in) > 1
order by datetime_call
Он выбирает звонки только у одного клиента (phone_id = '53541')
Нужно модифицировать его так, чтбы этот запрос выводил все одинаковые звонки по Всем клиентам, я попробовала написать следующее:
SELECT *
FROM calls c1
WHERE datetime_call between '20080801' and '20080831' and phone_id in ( SELECT COUNT(*)
FROM calls c2
WHERE c1.datetime_call = c2.datetime_call and c1.duration_sec = c2.duration_sec and c1.call_num = c2.call_num and c1.call_num_in = c2.call_num_in) > 1
order by datetime_call
Но выдает ошибку:
Line 7: Incorrect syntax near '>'.
Как исправить???? Подскажите!
Tanusha вне форума Ответить с цитированием
Старый 29.09.2008, 20:36   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А EXISTS в вашей СУБД не проходит?
mihali4 вне форума Ответить с цитированием
Старый 30.09.2008, 11:08   #3
Tanusha
Пользователь
 
Регистрация: 18.07.2008
Сообщений: 21
По умолчанию

Я попробовала вот что:
SELECT *
FROM calls c1
WHERE datetime_call between '20080801' and '20080831' and
(SELECT COUNT(c2.phone_id)
FROM calls c2
WHERE c1.datetime_call = c2.datetime_call and c1.duration_sec = c2.duration_sec
and c1.call_num = c2.call_num and c1.call_num_in = c2.call_num_in
) > 1
order by c1.datetime_call
Но он выдает мне все phone_id, т.е. вот эти поля c1.datetime_call = c2.datetime_call and c1.duration_sec = c2.duration_sec
and c1.call_num = c2.call_num and c1.call_num_in = c2.call_num_in одиноковые а phone_id разные, мне то нужно чтобы запрос выдавал все Phone_id также одинаковые...
Tanusha вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание запроса по дублирующимся звонкам Tanusha SQL, базы данных 3 11.08.2008 10:08
Составление слова Cawboy Общие вопросы Delphi 2 03.06.2008 13:21
Составление билетов(поправка рандома) Jodu Паскаль, Turbo Pascal, PascalABC.NET 23 09.04.2008 22:48
Составление диаграммы Иля Microsoft Office Excel 1 06.04.2008 18:08