Как выбрать записи DISTINCT, включая DATETIME, если DATETIME отличается? - PullRequest
1 голос
/ 04 января 2012

Мне нужно получить данные для отчета из базы данных SQL Server 2008 R2, в которой перечислены все продукты, созданные для данного дня. Записи могут иметь несколько записей в один и тот же день, но я хочу только посчитать элементы один раз.

Пример записи:

SerialNumber VARCHAR(20)
OrderNumber VARCHAR(50)
Price DECIMAL(7,2)
TestDateTime DATETIME

Мой запрос на просмотр может выглядеть примерно так:

SELECT DISTINCT OrderNumber, SerialNumber, Price, TestDateTime 
FROM TestTable
ORDER BY OrderNumber, SerialNumber

... и тогда запрос отчета будет выглядеть примерно так:

SELECT OrderNumber, SerialNumber, Price
FROM TestView
WHERE CONVERT(date, getdate()) = CONVERT(date, TestDateTime)

... за исключением того, что я получаю отдельную (дублирующую) запись для каждой даты и времени. Мне нужно поле даты и времени, так как я буду выбирать записи из представления на основе даты, но я также хочу получить точную сумму полей цены для данного OrderNumber, поэтому я хочу видеть каждый SerialNumber только один раз.

Есть идеи?

Следующий вопрос - как получить общую цену для всех строк с одинаковым OrderNumber? Может быть, это должен быть отдельный вопрос ...

1 Ответ

2 голосов
/ 04 января 2012

Рассматривали ли вы просто приведение его на свидание

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...