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

Откуда:
Сообщений: 359
У меня очень простая задачка, но никак не сооброжу как составить запрос.
Нужно получить список сумм продаж по дням с помощью EF.
Зача вроде бы простая и хрестиматийная, вот как-бы и ответ на неё
https://books.google.ru/books?id=6dokx8odwYkC&pg=PA37&lpg=PA37&dq=sql запрос возвращающий сумму по дням&source=bl&ots=QODCmcnHd6&sig=S1BIEt9ab_RDQk8sNemVgygLFCM&hl=ru&sa=X&ei=cka2VO34F4vhywOZ44KIDw&ved=0CBwQ6AEwAA#v=onepage&q=sql запрос возвращающий сумму по дням&f=false
Но проблема в том что я не могу сгруппировать записи по дате, т. к. в этом поле записано точное время, и значения все разные.
14 янв 15, 13:41    [17116381]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
Glory
Member

Откуда:
Сообщений: 104760
palich12
Но проблема в том что я не могу сгруппировать записи по дате, т. к. в этом поле записано точное время, и значения все разные.

И что вам мешает взять только дату без времени ?
14 янв 15, 13:42    [17116393]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
palich12
Member

Откуда:
Сообщений: 359
Забыл уточнить. Временной Промежуток нужно варировать, тоесть это могут быть и месяца
14 янв 15, 13:42    [17116396]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
guest123456
Guest
palich12
Забыл уточнить. Временной Промежуток нужно варировать, тоесть это могут быть и месяца

Функции, получающие компоненты даты и времени
14 янв 15, 13:49    [17116443]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
palich12
Member

Откуда:
Сообщений: 359
guest123456, да спасибо практически то что надо. Но мне нужно через Entity Framework это сделать
14 янв 15, 14:08    [17116642]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
Glory
Member

Откуда:
Сообщений: 104760
palich12
Но мне нужно через Entity Framework это сделать

Делайте хоть через ассемблер
14 янв 15, 14:09    [17116649]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4804
palich12
guest123456, да спасибо практически то что надо. Но мне нужно через Entity Framework это сделать



Вам надо скорее задавать этот вопрос на C# форуме. Могу предложить поиграться с этой функцией

http://msdn.microsoft.com/en-us/library/system.data.objects.entityfunctions.diffdays(v=vs.110).aspx

С помощью неё вы можете вставить DATEDIFF функцию в запрос.

Второй подход: если объём данных не слишком велик -- загрузить результат негруппированного запроса в список (linq запрос).ToList() , а затем сгруппировать на уровне Linq в памяти.
14 янв 15, 16:21    [17117928]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
palich12
Member

Откуда:
Сообщений: 359
a_voronin
Могу предложить поиграться с этой функцией

http://msdn.microsoft.com/en-us/library/system.data.objects.entityfunctions.diffdays(v=vs.110).aspx

С помощью неё вы можете вставить DATEDIFF функцию в запрос.

Отлично, то что нужно. Оказалось помимо diffdays там есть функции DiffMonths и т. п. Так что то что нужно
20 янв 15, 15:04    [17143272]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
iap
Member

Откуда: Москва
Сообщений: 46999
palich12
там есть функции DiffMonths
Где там?
20 янв 15, 20:40    [17145032]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
palich12
Member

Откуда:
Сообщений: 359
iap
palich12
там есть функции DiffMonths
Где там?

В EF
https://msdn.microsoft.com/en-us/library/bb738563(v=vs.110).aspx
21 янв 15, 14:35    [17148852]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
iap
Member

Откуда: Москва
Сообщений: 46999
palich12
iap
пропущено...
Где там?

В EF
https://msdn.microsoft.com/en-us/library/bb738563(v=vs.110).aspx
MSSQL тут не при чём!
Нет у него такого!
21 янв 15, 15:04    [17149185]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
palich12
Member

Откуда:
Сообщений: 359
iap
palich12
пропущено...

В EF
[/url]https://msdn.microsoft.com/en-us/library/bb738563(v=vs.110).aspx
MSSQL тут не при чём!
Нет у него такого!


Как нет, есть. Вот же [url=https://msdn.microsoft.com/ru-ru/library/ms189794.aspx]https://msdn.microsoft.com/ru-ru/library/ms189794.aspx
3 фев 15, 15:49    [17212809]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
Maxx
Member [скрыт]

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

и где по ссылке описанна ф-ция DiffMonths ???
3 фев 15, 15:57    [17212893]     Ответить | Цитировать Сообщить модератору
 Re: Помогите составить SQL запрос  [new]
palich12
Member

Откуда:
Сообщений: 359
Maxx,
DATEDIFF ( datepart , startdate , enddate )
datepart = month
7 апр 15, 12:43    [17482954]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить