|
|
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
Подскажите с запросом? Т.е как указать чтоб группировал только по дате исключая время? Использовать в group by - substring(convert(varchar(10),starttime,112),1,10) ? есть таблица starttimeobject m_12009-10-18 0:001252009-10-18 0:002152009-10-18 0:003252009-10-18 1:001102009-10-18 1:002302009-10-18 1:003202009-10-19 0:001402009-10-19 0:002202009-10-19 0:003102009-10-19 1:00152009-10-19 1:002352009-10-19 1:00325 нужно получить следующее starttimeobject m_12009-10-18 1352009-10-18 2452009-10-18 3452009-10-19 1452009-10-19 2552009-10-19 335 то есть группировка по starttime и object делаю так: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2009, 16:21 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
забыл указать ASE/11.9.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2009, 16:22 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2009, 16:28 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
ну и соответственно в выборке то же самое надо написать Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2009, 16:30 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
ругается на тип данных Date. DateTime - работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2009, 16:51 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
Код: plaintext выше писал эту строку но что то не получилось с ней спасибо за помощь Mikle83 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2009, 16:54 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
Mikle83 пишет: > group by Convert(Date, TBNAME.starttime) А в ASE 11.9.2 была чистая дата (без времени)? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2009, 16:58 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
Dim2000, эм... честно не знаю - столкнулся с АСЕ начиная с 12.0 но как вариант Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 09:57 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
задам еще сюда вопросец, как бы продолжение. Не могу теперь в исходной таблице (пусть она будет t1 ) заменить t1.object именами из другой таблицы (пусть будет t2 ). таблица t2 object_id object_name0ppp1ddd2fff3ttt4ggg пытаюсь сделать запрос, выдает в результате все объекты из таблицы t2 и по ним сумму Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. сделал аналог в mysql там все работает Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 14:39 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
а так? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 15:06 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
так тоже не работает а вот в mysql почему то сработало ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 15:26 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
1 пишет: > а вот в mysql почему то сработало Ничего удивительного: ASE и Mysql - разные продукты ;). Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 15:38 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
да понимаю что разные но как можно реализовать в ASE это? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 15:41 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
1так тоже не работает а вот в mysql почему то сработало так что выдает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 15:54 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
А пользовать джойны религия не позволяет? :) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. попробуйте так ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 16:01 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
cherrex_Den получилось спасибо! сорри за невнимательность, в запросе забыл указать суммирование столбца из-за этого выдало не тот результат Mikle83 а с join что то ругается на синтаксис ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 16:12 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
подозреваю, что на Вашей версии надо писать inner join ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 16:14 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
при inner join ругается на "incorrect syntax neаr 'join' " по поводу задачи выше рано радовался здесь дал тестовый пример и он работает при добавлении еще столбцов в запросе и замены данных в них из других таблиц - опять каша. попробую щас разобраться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 16:46 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
в group by должны быть перечисленны все поля, которые в select`е, кроме тех на которые накладывается агригатная функция(min,sum, итд) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 16:52 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
и не только поля но и выражения( convert(varchar(11), t1.starttime,112) ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 16:55 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
cherrex_Den огромнейший респект!!! все получилось всем спасибо за внимание и советы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2009, 17:11 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
еще возник вопросец - не знаю как сделать t1 starttimeobjectm_12009-10-18 0:001252009-10-18 0:002152009-10-18 0:003252009-10-18 1:001102009-10-18 1:002302009-10-18 1:003202009-10-19 0:001402009-10-19 0:002202009-10-19 0:003102009-10-19 1:00152009-10-19 1:002352009-10-19 1:00325 t2 object_idobject_name0ppp1ddd2fff3ttt4ggg5ddd из тех же таблиц t1 и t2 нахожу теперь максимум за период по каждому объекту за каждый день: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. получил starttimeobjectm_12009-10-18 ddd252009-10-18 fff302009-10-18 ttt252009-10-19 ddd402009-10-19 fff352009-10-19 ttt25 а как получить еще и время максимумов? что то типа: starttimetimeobjectm_12009-10-18 0:00ddd252009-10-18 1:00fff302009-10-18 0:00ttt252009-10-19 0:00ddd402009-10-19 1:00fff352009-10-19 1:00ttt25 если просто указать t1.starttime то выводит все значения. группировать по t1.starttime также не получается. При использовании having опять же выведет все значения starttime Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2009, 15:19 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
решение нашел для своей задачи двумя запросами. попытался сделать одним запросом в ASE15 - результат немного не тот получается проверил в mysql, подобное решение там получилось вообщем еще раз повторю условия: t1 time_izmobjizm2009-05-06 22:00:00.0203702009-05-06 22:00:00.0224602009-05-06 22:00:00.0243782009-05-06 22:30:00.0203692009-05-06 22:30:00.0223972009-05-06 22:30:00.0244112009-05-06 23:00:00.0203882009-05-06 23:00:00.0223812009-05-06 23:00:00.0243222009-05-06 23:30:00.0204022009-05-06 23:30:00.0223902009-05-06 23:30:00.0243802009-05-07 00:00:00.0203752009-05-07 00:00:00.0223622009-05-07 00:00:00.0243962009-05-07 00:30:00.0203572009-05-07 00:30:00.0223552009-05-07 00:30:00.0243332009-05-07 01:00:00.0204202009-05-07 01:00:00.0223382009-05-07 01:00:00.0244072009-05-07 01:30:00.0203412009-05-07 01:30:00.0223852009-05-07 01:30:00.024376 t2 получаю из t1 запросом Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. date_izmobjs2009-05-06 22:00:00.0207392009-05-06 22:00:00.0228572009-05-06 22:00:00.0247892009-05-06 23:00:00.0207902009-05-06 23:00:00.0227712009-05-06 23:00:00.0247022009-05-07 00:00:00.0207322009-05-07 00:00:00.0227172009-05-07 00:00:00.0247292009-05-07 01:00:00.0207612009-05-07 01:00:00.0227232009-05-07 01:00:00.024783 искомое решение получаю из t2 вторым запросом Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. date_izmobjs2009-05-06 22:00:00.0228572009-05-06 22:00:00.0247892009-05-06 23:00:00.0207902009-05-07 01:00:00.0207612009-05-07 01:00:00.0227232009-05-07 01:00:00.024783 теперь пытаюсь объединить оба запроса в один убрав order by и получаю только максимумы из t1. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. date_izmobjs'2009-05-06 22'24789'2009-05-06 23'20790'2009-05-06 22'22857 Почему по отдельности верный результат а при объединении запросов только максимальные значения зы понимаю трудно воспринимать такой вопрос длинный с кучей данных но постарался все описать подробно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2009, 22:44 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
1, да!!!! просто.... я тут половину не разобрал, но заметил следующее: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. а здесь: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. скорее всего надо заменить t1 на такую же муть как и в верху: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2009, 19:16 |
|
||
|
Group By по дате
|
|||
|---|---|---|---|
|
#18+
тут ошибки нет t2 это промежуточная таблица - попытка получить искомый результат двумя запросами. в идеале нужно сделать тоже самое одним запросом из одной таблицы t1. любопытно другое почему в mysql запрос работает, а тут такой же запрос выводит другой результат. провобовал в ASE11(двумя запросами, одним не получилось) и в ASE15. вообщем в голове каша. задача вроде на вид простая а никак не могу решить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2009, 10:29 |
|
||
|
|

start [/forum/topic.php?fid=55&tid=2010855]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
157ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 270ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...