2 ВЫБРАТЬ в запросе с помощью ORDER BY - PullRequest
0 голосов
/ 26 июня 2019

Мне нужно создать запрос MYSQL, который будет возвращать следующее:

Excel

это мой запрос

    SELECT  t1.fecha_salida,
        t1.agencia,
        t2.fecha_salida,
        t2.directa
FROM   (SELECT fecha_salida, COUNT(*) AS agencia 
        FROM   ventas 
        WHERE  ventas.eliminado = 0 AND ventas.cliente_id !=2
        GROUP BY fecha_salida) AS t1, 
       (SELECT fecha_salida, COUNT(*) AS directa 
        FROM   ventas
        WHERE  ventas.eliminado = 0 AND ventas.cliente_id =2
        GROUP BY fecha_salida) AS t2
        GROUP BY t1.fecha_salida

мой стол:

|------ |Columna|Tipo|Nulo|Predeterminado |------
   |//**venta_id**//|int(11)|No| |usuario_id|int(11)|No|
   |tour_id|int(11)|No| |cliente_id|int(11)|No| |vehiculo_id|int(11)|No|
   |cashflow_id|int(11)|No| |total_compra|int(6)|No|
   |total_pagado|int(6)|No| |total_iva|int(6)|No|
   |total_comision|int(11)|No| |a_pagar|int(11)|No|
   |fecha_venta|datetime|No| |fecha_salida|date|No|
   |concretada|tinyint(1)|No| |pasajeros|int(3)|No|
   |nombre|varchar(500)|Sí|NULL |direccion|varchar(500)|Sí|NULL
   |observaciones|varchar(500)|Sí|NULL |forma_pago|tinyint(2)|No|
   |eliminado|tinyint(1)|No|

Можете ли вы помочь мне

1 Ответ

2 голосов
/ 26 июня 2019

Вы можете использовать UNION для объединения двух запросов, имеющих одинаковую структуру, также вы должны выбрать из объединенного результата и затем упорядочить их

SELECT * FROM (

    SELECT fecha_salida, COUNT(*) AS agencia 
    FROM ventas 
    WHERE `fecha_venta` between '2012-03-11 00:00:00' and '2019-08-30 23:59:00' 
    and ventas.eliminado = 0 
    AND ventas.cliente_id = 2 
    GROUP BY fecha_salida

    UNION

    SELECT fecha_salida, COUNT(*) AS agencia 
    FROM ventas 
    WHERE `fecha_venta` between '2012-03-11 00:00:00' and '2019-08-30 23:59:00' 
    and ventas.eliminado = 0 
    AND ventas.cliente_id != 2 
    GROUP BY fecha_salida

) RESULT 
ORDER BY agencia
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...