es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

La consulta select de Mysql count y Distinct no están funcionando correctamente.

Estoy desarrollando un sitio web de eCommerce utilizando Laravel 8. Escribí el siguiente script para obtener el precio total y la cantidad total bajo un solo número de orden. Desde el siguiente script estoy obteniendo un ERROR. ¿Dónde está el problema? Por favor, ayúdame.
*En primer lugar, escribo una fila de MySQL y luego convertiré la consulta de Laravel Builder.

SELECT COUNT (total_price) como totaPrice, COUNT (productqty) como proQnty
FROM (SELECT DISTINCT order_id FROM orderDetails)
LEFT JOIN ordertbl 
ON ordertbl.id = orderDetails.order_id;
Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Parece haber algunos errores en el script proporcionado.

    En primer lugar, hay un error tipográfico en la primera línea donde “totaPrice” debería ser “totalPrice”.

    En segundo lugar, la subconsulta en la cláusula FROM debe incluir la tabla de detalles de pedido para que LEFT JOIN funcione correctamente.

    Aquí hay una versión actualizada del script:

    SELECT COUNT(total_price) as totalPrice, SUM(productqty) as proQnty
    FROM (
      SELECT DISTINCT order_id, total_price, productqty
      FROM orderDetails
    ) od
    LEFT JOIN ordertbl o ON o.id = od.order_id;
    

    Este script primero selecciona los ID de pedido distintos, los precios totales y las cantidades de producto de la tabla de detalles de pedido y luego realiza un LEFT JOIN con la tabla de pedidos basado en los ID de pedido. Se utiliza la función COUNT para la columna de precios totales y la función SUM para la columna de cantidad de productos.

Comments are closed.