|
Написание запроса SQL
|
|||
---|---|---|---|
#18+
Добрый день, недавно стал разбираться в написании запросов. никто не подскажет следующее: Имеется таблица вида filial||order_type||date Как написать запрос, чтобы у каждого филиала была написана услуга и их количество(в таблице всего 4 типа услуг) filial||order_type1_count||order_type1_count2||order_type1_count3||order_type1_count4 Помогите пожалуйста(( ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2017, 13:05 |
|
Написание запроса SQL
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2017, 14:01 |
|
Написание запроса SQL
|
|||
---|---|---|---|
#18+
Naf, Спасибо большое!! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2017, 16:04 |
|
Написание запроса SQL
|
|||
---|---|---|---|
#18+
Naf, По какой-то причине количество посчитал в разы меньше чем должен был( ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2017, 16:39 |
|
Написание запроса SQL
|
|||
---|---|---|---|
#18+
Naf, SELECT филиал, COUNT(case when тип = 'Услуга' then тип end ) as order1, COUNT(case when тип = 'Личная консультация' then тип end ) as order2, COUNT(case when тип = 'Консультация по интернету' then тип end ) as order3, COUNT(case when тип = 'Телефонная консультация' then тип end ) as order4, COUNT(case when тип = 'Платная услуга' then тип end ) as order5 FROM( SELECT AVG(EXTRACT(EPOCH FROM o.order_date AT TIME ZONE 'UTC')) / 10000000000 AS d, to_char(o.order_date, 'dd.mm.yyyy') AS дата, COUNT(*) AS заявления, substring(m.title FROM 0 FOR 48) AS филиал, substring(u.title FROM 0 FOR 48) AS оператор, substring(o.service_title FROM 0 FOR 48) AS услуга, o.order_type as тип FROM smartcenterorder o, smartcentermfc m, smartcenteruser u WHERE o.order_date BETWEEN '2017-04-01' AND '2017-04-02' GROUP BY дата, филиал, оператор, услуга,тип ) as fo GROUP BY филиал ORDER BY order1 DESC в чем может быть ошибка?( да и select в selecte это плохо( ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2017, 16:49 |
|
Написание запроса SQL
|
|||
---|---|---|---|
#18+
вы в подзапросе (который тут рядом не стоял по-хорошему) сворачиваете данные по полю тип, а потом пытаетесь узнать, а почему их стало меньше ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2017, 09:01 |
|
Написание запроса SQL
|
|||
---|---|---|---|
#18+
Да и в подзапросе чушь какая-то: там декартово произведение, связей между таблицами нет ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2017, 09:06 |
|
|
start [/forum/topic.php?fid=32&gotonew=1&tid=1540098]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
199ms |
get topic data: |
14ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
others: | 240ms |
total: | 553ms |
0 / 0 |