Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как получить уникальные записи? / 13 сообщений из 13, страница 1 из 1
14.08.2002, 14:21:25
    #32043183
DKalinin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
Есть таблица в которой хранятся номера телефонов
и датавремя звонка(datetime)

надо выбрать из нее уникальные номера за каждый день
заданного периода.

Подскажите, пожалуйста, как это сделать.
...
Рейтинг: 0 / 0
14.08.2002, 14:23:33
    #32043184
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
Код: plaintext
1.
2.
select * from CallsTable
where CallDate between @stdate and @enddate
group by CallNumber
...
Рейтинг: 0 / 0
14.08.2002, 14:25:17
    #32043186
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
или использовать distinct
...
Рейтинг: 0 / 0
14.08.2002, 14:25:48
    #32043187
DKalinin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
нет. надо выбрать за каждый день номера которые набирались один раз в этот день.

а период я имел ввиду - произвольный(месяц например)
т.е. надо получить уникальные звонки за 1 число, за 2 число и т.д.
...
Рейтинг: 0 / 0
14.08.2002, 14:27:07
    #32043189
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
не внимательно прочитал, наверное так
Код: plaintext
1.
2.
select * from CallsTable
where CallDate between @stdate and @enddate
group by CallNumber, CallDate 
...
Рейтинг: 0 / 0
14.08.2002, 14:28:53
    #32043190
DKalinin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
я пытался эт оделать так:
select Number as IntNumber,DayNumber=convert(char(10),DateTime,103)
from IntBilling
group by Number,DateTime
having count(number)=1

так она отбирает несколько записей потому что в поле DateTime хранится еще и время.
как бы анализировать оттуда только дату?
...
Рейтинг: 0 / 0
14.08.2002, 14:29:15
    #32043191
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
тогда так
Код: plaintext
1.
2.
3.
select CallNumber, CallDate, count(*) from CallsTable
where CallDate between @stdate and @enddate
group by CallNumber, CallDate 
having count(*) =  1 
...
Рейтинг: 0 / 0
14.08.2002, 14:30:41
    #32043193
DKalinin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
все равно отбирает С УЧЕТОМ ВРЕМЕНИ
...
Рейтинг: 0 / 0
14.08.2002, 14:33:20
    #32043194
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
а тебе не наплевать на время
если задан stdate & enddate, то
10/10/2002 00:00:00.0 < 10/10/2002 00:00:00.1 < 11/10/2002 00:00:00.0
...
Рейтинг: 0 / 0
14.08.2002, 14:33:53
    #32043195
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
select CallNumber, day(CallDate) from CallsTable
where CallDate between @stdate and @enddate
group by CallNumber, day(CallDate)
having count(*) = 1
...
Рейтинг: 0 / 0
14.08.2002, 14:34:20
    #32043196
Luchkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
здесь уже где-то было
cast(round(cast(GetDate() as float), 0, 1) as smalldatetime)
это просто дата
...
Рейтинг: 0 / 0
14.08.2002, 14:34:27
    #32043198
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
А, понял, группирует по времени !
...
Рейтинг: 0 / 0
14.08.2002, 14:56:20
    #32043201
Rom
Rom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить уникальные записи?
Код: plaintext
1.
2.
3.
4.
select CallNumber, cast(round(cast(CallDate as float),  0 ,  1 ) as datetime) 
from CallsTable
where CallDate between @stdate and @enddate
group by CallNumber, cast(round(cast(CallDate as float),  0 ,  1 ) as datetime) 
having count(*) =  1 
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как получить уникальные записи? / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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