
    Новые сообщения [новые:0]
  
  Дайджест 
  
  Горячие темы
    Избранное [новые:0]
  
Форумы 
 
Пользователи 
Статистика 
Статистика нагрузки 
    Мод. лог 
  
  Поиск 
  | 
| 
 17.07.2017, 13:05 
 | 
|||
|---|---|---|---|
  
  | 
|||
Написание запроса SQL  | 
|||
| 
 #18+ 
  
    
  Добрый день, недавно стал разбираться в написании запросов. никто не подскажет следующее: Имеется таблица вида filial||order_type||date Как написать запрос, чтобы у каждого филиала была написана услуга и их количество(в таблице всего 4 типа услуг) filial||order_type1_count||order_type1_count2||order_type1_count3||order_type1_count4 Помогите пожалуйста(( ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 17.07.2017, 14:01 
 | 
|||
|---|---|---|---|
Написание запроса SQL  | 
|||
| 
 #18+ 
  
    
  Код: sql 1. 2. 3. 4. 5. 6. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 17.07.2017, 16:04 
 | 
|||
|---|---|---|---|
  
  | 
|||
Написание запроса SQL  | 
|||
| 
 #18+ 
  
    
  Naf, Спасибо большое!! ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 17.07.2017, 16:39 
 | 
|||
|---|---|---|---|
  
  | 
|||
Написание запроса SQL  | 
|||
| 
 #18+ 
  
    
  Naf, По какой-то причине количество посчитал в разы меньше чем должен был( ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 17.07.2017, 16:49 
 | 
|||
|---|---|---|---|
  
  | 
|||
Написание запроса 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 это плохо( ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.07.2017, 09:01 
 | 
|||
|---|---|---|---|
Написание запроса SQL  | 
|||
| 
 #18+ 
  
    
  вы в подзапросе (который тут рядом не стоял по-хорошему) сворачиваете данные по полю тип, а потом пытаетесь узнать, а почему их стало меньше ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.07.2017, 09:06 
 | 
|||
|---|---|---|---|
Написание запроса SQL  | 
|||
| 
 #18+ 
  
    
  Да и в подзапросе чушь какая-то: там декартово произведение, связей между таблицами нет ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
  | 

start [/forum/topic.php?fid=32&mobile=1&tid=1540098]:  | 
    0ms | 
get settings:  | 
    11ms | 
get forum list:  | 
    14ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    50ms | 
get topic data:  | 
    11ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    48ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 11ms | 
| total: | 158ms | 

    | 0 / 0 | 

На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.