Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите создать запрос!!!  [new]
tarasdj
Member [заблокирован]

Откуда:
Сообщений: 82
Есть таблица в в ней две колонки DATETIME, а другая REAL.
Дата имеет формат

2000-01-01 00:00:00.000.

Как будет выглядить запрос которые делает выборку с одной даты по другую и сли есть повторения то обьеденить????
27 сен 11, 12:37    [11340921]     Ответить | Цитировать Сообщить модератору
 Re: Помогите создать запрос!!!  [new]
Владимир Затуливетер
Member

Откуда:
Сообщений: 427
tarasdj,

автор
Как будет выглядить запрос которые делает выборку с одной даты по другую

SELECT dateField, RealField
FROM TableName
WHERE DateField BETWEEN @begDate AND @endDate

автор
и если есть повторения то обьеденить????

Объединять или нет вам решать
SELECT DateField, SUM(RealField) AS SumRealField
FROM TableName
WHERE DateField BETWEEN @begDate AND @endDate
GROUP BY DateField

Лучше наверное группировать как-то так
SELECT  YEAR(DateField), MONTH(DateField), DAY(DateField), SUM(RealField) AS SumRealField
FROM TableName
WHERE DateField BETWEEN @begDate AND @endDate
GROUP BY YEAR(DateField), MONTH(DateField), DAY(DateField)
27 сен 11, 13:00    [11341177]     Ответить | Цитировать Сообщить модератору
 Re: Помогите создать запрос!!!  [new]
Владимир Затуливетер
Member

Откуда:
Сообщений: 427
или так группировать, это уж как вам нравиться.

SELECT  CONVERT(DATE, DateField), SUM(RealField) AS SumRealField
FROM TableName
WHERE DateField BETWEEN @begDate AND @endDate
GROUP BY CONVERT(DATE, DateField)
27 сен 11, 13:09    [11341225]     Ответить | Цитировать Сообщить модератору
 Re: Помогите создать запрос!!!  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
tarasdj
Дата имеет формат

2000-01-01 00:00:00.000.
DATETIME имеет другой формат хранения.
А Вы показываете какое-то строковое представление даты.
И к вопросу отношения не имеет.
27 сен 11, 13:12    [11341252]     Ответить | Цитировать Сообщить модератору
 Re: Помогите создать запрос!!!  [new]
tarasdj
Member [заблокирован]

Откуда:
Сообщений: 82
Владимир Затуливетер
или так группировать, это уж как вам нравиться.

SELECT  CONVERT(DATE, DateField), SUM(RealField) AS SumRealField
FROM TableName
WHERE DateField BETWEEN @begDate AND @endDate
GROUP BY CONVERT(DATE, DateField)


А что такое @begDate? Как его задать?
27 сен 11, 14:09    [11341785]     Ответить | Цитировать Сообщить модератору
 Re: Помогите создать запрос!!!  [new]
tarasdj
Member [заблокирован]

Откуда:
Сообщений: 82
Вот так заработало. То что я хотел

SELECT  datearray, dataarray  
FROM Гіпс_млин_4
WHERE datearray between '2011-09-12' AND '2011-09-13' 
union 
select datearray, dataarray from Гіпс_млин_4
WHERE datearray between '2011-09-12' AND '2011-09-13'
27 сен 11, 14:27    [11341979]     Ответить | Цитировать Сообщить модератору
 Re: Помогите создать запрос!!!  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
tarasdj,

DECLARE @begDate SMALLDATETIME
DECLARE @endDate SMALLDATETIME

SET @begDate ='дата начала, вставить'
SET @endDate ='дата окончания, вставить'
27 сен 11, 14:28    [11341993]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить