powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Group By по дате
25 сообщений из 27, страница 1 из 2
Group By по дате
    #36259987
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите с запросом? Т.е как указать чтоб группировал только по дате исключая время?
Использовать в 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.
select starttime, object, SUM(m_1)
from   tbl_1
group by starttime, object
...
Рейтинг: 0 / 0
Group By по дате
    #36259990
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл указать

ASE/11.9.2
...
Рейтинг: 0 / 0
Group By по дате
    #36260015
Mikle83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
group by Convert(Date, TBNAME.starttime)
можно так
...
Рейтинг: 0 / 0
Group By по дате
    #36260021
Mikle83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и соответственно в выборке то же самое надо написать
Код: plaintext
1.
2.
3.
Select
 Convert(Date, TBNAME.starttime), object, SUM(m_1)
from   tbl_1
group by Convert(Date, TBNAME.starttime), object
...
Рейтинг: 0 / 0
Group By по дате
    #36260115
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ругается на тип данных Date.
DateTime - работает
...
Рейтинг: 0 / 0
Group By по дате
    #36260130
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
Convert(varchar( 11 ), starttime)
а вот так заработало))
выше писал эту строку но что то не получилось с ней

спасибо за помощь Mikle83
...
Рейтинг: 0 / 0
Group By по дате
    #36260151
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mikle83 пишет:

> group by Convert(Date, TBNAME.starttime)

А в ASE 11.9.2 была чистая дата (без времени)?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Group By по дате
    #36261222
Mikle83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim2000,
эм... честно не знаю - столкнулся с АСЕ начиная с 12.0
но как вариант
Код: plaintext
convert(varchar, @D,  104 )
думаю это было с рождения АСЕ :)
...
Рейтинг: 0 / 0
Group By по дате
    #36262071
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
задам еще сюда вопросец, как бы продолжение.
Не могу теперь в исходной таблице (пусть она будет t1 ) заменить t1.object именами из другой таблицы (пусть будет t2 ).
таблица t2
object_id object_name0ppp1ddd2fff3ttt4ggg

пытаюсь сделать запрос, выдает в результате все объекты из таблицы t2 и по ним сумму

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
select 
        convert(varchar( 11 ), t1.starttime, 112 ),
        t2.object_name,
        sum(t1.m_1)

from t1, t2  

where 
        t1.object =  t2.object_id

group by
            convert(varchar( 11 ), t1.starttime, 112 ),
            t1.object

сделал аналог в 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.
mysql> use test
Database changed
mysql> select * from t1;
+---------------------+--------+------+
| starttime           | object | m_1  |
+---------------------+--------+------+
|  2009 - 10 - 18   00 : 00 : 00  |       1  |    25  |
|  2009 - 10 - 18   00 : 00 : 00  |       2  |    15  |
|  2009 - 10 - 18   00 : 00 : 00  |       3  |    25  |
|  2009 - 10 - 18   01 : 00 : 00  |       1  |    10  |
|  2009 - 10 - 18   01 : 00 : 00  |       2  |    30  |
|  2009 - 10 - 18   01 : 00 : 00  |       3  |    20  |
|  2009 - 10 - 19   00 : 00 : 00  |       1  |    40  |
|  2009 - 10 - 19   00 : 00 : 00  |       2  |    20  |
|  2009 - 10 - 19   00 : 00 : 00  |       3  |    10  |
|  2009 - 10 - 19   01 : 00 : 00  |       1  |     5  |
|  2009 - 10 - 19   01 : 00 : 00  |       2  |    35  |
|  2009 - 10 - 19   01 : 00 : 00  |       3  |    25  |
+---------------------+--------+------+
 12  rows in set ( 0 . 03  sec)


mysql> select date_format(starttime,'%Y-%m-%d'), object, sum(m_1) from t1
    -> group by date_format(starttime,'%Y-%m-%d'),object;
+-----------------------------------+--------+----------+
| date_format(starttime,'%Y-%m-%d') | object | sum(m_1) |
+-----------------------------------+--------+----------+
|  2009 - 10 - 18                         |       1  |        35  |
|  2009 - 10 - 18                         |       2  |        45  |
|  2009 - 10 - 18                         |       3  |        45  |
|  2009 - 10 - 19                         |       1  |        45  |
|  2009 - 10 - 19                         |       2  |        55  |
|  2009 - 10 - 19                         |       3  |        35  |
+-----------------------------------+--------+----------+
 6  rows in set ( 0 . 00  sec)

mysql> select * from t2;
+-------+----------+
| objid | obj_name |
+-------+----------+
|      0  | fyo      |
|      1  | tii      |
|      2  | oor      |
|      3  | qww      |
|      4  | see      |
+-------+----------+
 5  rows in set ( 0 . 00  sec)

mysql> select date_format(t1.starttime,'%Y-%m-%d'), t2.obj_name, sum(t1.m_1) fro
m t1, t2
    -> where t1.object = t2.objid
    -> group by date_format(t1.starttime,'%Y-%m-%d'),t1.object;
+--------------------------------------+----------+-------------+
| date_format(t1.starttime,'%Y-%m-%d') | obj_name | sum(t1.m_1) |
+--------------------------------------+----------+-------------+
|  2009 - 10 - 18                            | tii      |           35  |
|  2009 - 10 - 18                            | oor      |           45  |
|  2009 - 10 - 18                            | qww      |           45  |
|  2009 - 10 - 19                            | tii      |           45  |
|  2009 - 10 - 19                            | oor      |           55  |
|  2009 - 10 - 19                            | qww      |           35  |
+--------------------------------------+----------+-------------+
 6  rows in set ( 0 . 00  sec)
...
Рейтинг: 0 / 0
Group By по дате
    #36262145
cherrex_Den
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а так?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
select 
        convert(varchar( 11 ), t1.starttime, 112 ),
        t2.object_name,
        sum(t1.m_1)

from t1, t2  

where 
        t1.object =  t2.object_id

group by
            convert(varchar( 11 ), t1.starttime, 112 ),
            t2.object_name
...
Рейтинг: 0 / 0
Group By по дате
    #36262218
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так тоже не работает
а вот в mysql почему то сработало
...
Рейтинг: 0 / 0
Group By по дате
    #36262267
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1 пишет:

> а вот в mysql почему то сработало

Ничего удивительного: ASE и Mysql - разные продукты ;).
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Group By по дате
    #36262277
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да понимаю что разные
но как можно реализовать в ASE это?
...
Рейтинг: 0 / 0
Group By по дате
    #36262320
cherrex_Den
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1так тоже не работает
а вот в mysql почему то сработало

так что выдает?
...
Рейтинг: 0 / 0
Group By по дате
    #36262345
Mikle83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А пользовать джойны религия не позволяет? :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
select 
        convert(varchar( 11 ), t1.starttime, 112 ),
        t2.object_name,
        sum(t1.m_1)

from t1
 join t2 on t1.object =  t2.object_id
group by
            convert(varchar( 11 ), t1.starttime, 112 ),
            t2.object_name

попробуйте так
...
Рейтинг: 0 / 0
Group By по дате
    #36262375
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cherrex_Den
получилось спасибо!

сорри за невнимательность, в запросе забыл указать суммирование столбца
из-за этого выдало не тот результат

Mikle83 а с join что то ругается на синтаксис
...
Рейтинг: 0 / 0
Group By по дате
    #36262380
Mikle83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подозреваю, что на Вашей версии надо писать inner join
...
Рейтинг: 0 / 0
Group By по дате
    #36262462
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
при inner join ругается на "incorrect syntax neаr 'join' "

по поводу задачи выше рано радовался
здесь дал тестовый пример и он работает
при добавлении еще столбцов в запросе и замены данных в них из других таблиц - опять каша. попробую щас разобраться
...
Рейтинг: 0 / 0
Group By по дате
    #36262478
cherrex_Den
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в group by должны быть перечисленны все поля, которые в select`е, кроме тех на которые накладывается агригатная функция(min,sum, итд)
...
Рейтинг: 0 / 0
Group By по дате
    #36262493
cherrex_Den
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и не только поля но и выражения( convert(varchar(11), t1.starttime,112) )
...
Рейтинг: 0 / 0
Group By по дате
    #36262555
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cherrex_Den
огромнейший респект!!!
все получилось

всем спасибо за внимание и советы.
...
Рейтинг: 0 / 0
Group By по дате
    #36264622
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще возник вопросец - не знаю как сделать

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.
select 
        convert(varchar( 11 ), t1.starttime, 112 ),
        t2.object_name,
        max(t1.m_1)

from t1, t2  

where 
        t1.object =  t2.object_id

group by
            convert(varchar( 11 ), t1.starttime, 112 ),
            t2.object_name

получил
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.
select 
        convert(varchar( 11 ), t1.starttime, 112 ),
        t1.starttime,
        t2.object_name,
        t1.m_1

from t1, t2  

where 
        t1.object =  t2.object_id

group by
            convert(varchar( 11 ), t1.starttime, 112 ),
            t2.object_name
having t1.m_1 = max(t1.m_1)
...
Рейтинг: 0 / 0
Group By по дате
    #36271476
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
решение нашел для своей задачи двумя запросами.
попытался сделать одним запросом в 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.
SELECT 
      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
      convert(varchar( 2 ),t1.time_izm, 108 ) as date_izm,
      obj, 
      sum(izm) s
FROM  t1
GROUP BY 
         substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
         substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
         substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
         convert(varchar( 2 ),t1.time_izm, 108 ),
         obj
ORDER BY date_izm
t2
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.
SELECT *
FROM t2
WHERE s IN 
           (
            SELECT MAX(s) 
            FROM  t2
            GROUP BY 
                     substring(convert(varchar( 10 ),date_izm, 112 ), 1 , 4 )+'-'+ 
                     substring(convert(varchar( 10 ),date_izm, 112 ), 5 , 2 )+'-'+ 
                     substring(convert(varchar( 10 ),date_izm, 112 ), 7 , 2 ),
                     obj
           )
ORDER BY date_izm, obj
искомое решение:
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.
SELECT *
FROM
    (
     SELECT 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                     convert(varchar( 2 ),t1.time_izm, 108 ) as date_izm,
           obj, 
           sum(izm) s
     FROM  t1
     GROUP BY 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                       convert(varchar( 2 ),t1.time_izm, 108 ),
             obj
     )xx
WHERE s IN 
          (
           SELECT MAX(s) 
           FROM	
               (
                SELECT 
                      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
                      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
                      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                                convert(varchar( 2 ),t1.time_izm, 108 ) as date_izm,
                      obj, 
                      sum(izm) s
                FROM  t1
                GROUP BY 
                        substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
                        substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
                        substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                                  convert(varchar( 2 ),t1.time_izm, 108 ),
                        obj
                )xx

           GROUP BY 
                   substring(convert(varchar( 10 ),date_izm, 112 ), 1 , 4 )+'-'+ 
                   substring(convert(varchar( 10 ),date_izm, 112 ), 5 , 2 )+'-'+ 
                   substring(convert(varchar( 10 ),date_izm, 112 ), 7 , 2 ),
                   obj
          )
получаю:
date_izmobjs'2009-05-06 22'24789'2009-05-06 23'20790'2009-05-06 22'22857

Почему по отдельности верный результат а при объединении запросов только максимальные значения
зы понимаю трудно воспринимать такой вопрос длинный с кучей данных но постарался все описать подробно.
...
Рейтинг: 0 / 0
Group By по дате
    #36273346
cherrex_Den
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1,

да!!!! просто....

я тут половину не разобрал, но заметил следующее:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT *
FROM t2
WHERE s IN 
           (
            SELECT MAX(s) 
            FROM  t2 -- !!!!!!!!!ТУТ t2!!!!!!!!
            GROUP BY 
                     substring(convert(varchar( 10 ),date_izm, 112 ), 1 , 4 )+'-'+ 
                     substring(convert(varchar( 10 ),date_izm, 112 ), 5 , 2 )+'-'+ 
                     substring(convert(varchar( 10 ),date_izm, 112 ), 7 , 2 ),
                     obj
           )
ORDER BY date_izm, obj

а здесь:
Код: 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.
SELECT *
FROM
    (
     SELECT 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                     convert(varchar( 2 ),t1.time_izm, 108 ) as date_izm,
           obj, 
           sum(izm) s
     FROM  t1
     GROUP BY 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                       convert(varchar( 2 ),t1.time_izm, 108 ),
             obj
     )xx
WHERE s IN 
          (
           SELECT MAX(s) 
           FROM	
               (
                SELECT 
                      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
                      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
                      substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                                convert(varchar( 2 ),t1.time_izm, 108 ) as date_izm,
                      obj, 
                      sum(izm) s
                FROM t1 --!!!!!!!А ТУТ t1!!!!!!!!!!
                GROUP BY 
                        substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
                        substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
                        substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                                  convert(varchar( 2 ),t1.time_izm, 108 ),
                        obj
                )xx

           GROUP BY 
                   substring(convert(varchar( 10 ),date_izm, 112 ), 1 , 4 )+'-'+ 
                   substring(convert(varchar( 10 ),date_izm, 112 ), 5 , 2 )+'-'+ 
                   substring(convert(varchar( 10 ),date_izm, 112 ), 7 , 2 ),
                   obj
          )


скорее всего надо заменить t1 на такую же муть как и в верху:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
(
     SELECT 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
           substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                     convert(varchar( 2 ),t1.time_izm, 108 ) as date_izm,
           obj, 
           sum(izm) s
     FROM  t1
     GROUP BY 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 1 , 4 )+'-'+ 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 5 , 2 )+'-'+ 
             substring(convert(varchar( 10 ),t1.time_izm, 112 ), 7 , 2 )+' '+  
                       convert(varchar( 2 ),t1.time_izm, 108 ),
             obj
     )xx
...
Рейтинг: 0 / 0
Group By по дате
    #36274152
1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тут ошибки нет
t2 это промежуточная таблица - попытка получить искомый результат двумя запросами.

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

любопытно другое почему в mysql запрос работает, а тут такой же запрос выводит другой результат. провобовал в ASE11(двумя запросами, одним не получилось) и в ASE15.

вообщем в голове каша.
задача вроде на вид простая а никак не могу решить
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Group By по дате
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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