Secondary Table Column Sort

0
Categoria       Segmento

1               Atendimento
1               Tempo de espera pela peça
1               Preço

2               Atendimento
2               Negociação
2               Tempo de entrega do veículo

3               Atendimento
3               Preço
3               Serviço

I have a table where I saved some data in that order above. If it is category 1, save those segments in that order.

I am showing this data on another page, however the data is not coming in the same order as it is saved in the table. Follow SELECT .

select 
    segmento, 
    categoria, 
    round(avg(dealer_rating_categories.rating)) as media 
from 
    'dealer_ratings' 
inner join 
    'dealer_rating_categories' on 'dealer_rating_categories'.'id_avaliacao' = 'dealer_ratings'.'id' 
inner join 
    'categories' on 'categories'.'id' = 'dealer_rating_categories'.'id_categoria' 
where 
    'dealer_ratings'.'deleted_at' is null 
and 
    'dealer_ratings'.'id_concessionaria' = 1 
and 
    'dealer_ratings'.'id_concessionaria' is not null 
and 
    'dealer_rating_categories'.'id_categoria' in (1, 2, 3) 
group by 
    'dealer_rating_categories'.'id_categoria', 'segmento' 
order by 
    'categories'.'ordem'
  

Result

Categoria               Segmento

Compra de Veículo       Atendimento
Compra de Veículo       Negociação
Compra de Veículo       Tempo de entrega do veículo

Serviço                 Preço
Serviço                 Serviço
Serviço                 Atendimento

Peças                   Preço
Peças                   Atendimento
Peças                   Tempo de espera pela peça

The only thing that is correct is the Vehicle Purchase category that is ID 2. The others, the segment comes out of order.

Just detailing:

I do not have the segmented segments separately in another table linking with the category table. I manually enter the code. Otherwise, I'd create a ORDEM column in this table and add ORDER BY ORDEM to SELECT and solve the problem.

But since this is not the case, what can I do?

    
asked by anonymous 02.05.2016 / 15:16

0 answers