Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Zapytanie MySql działa, ale nie działa w sp

Jestem prawie pewien, że powodem jest pomylenie UserId i o.UserId.

W kontekście zapytania nie wie, że masz na myśli argument do sp. Zmień nazwę argumentu na coś w rodzaju „arg_UserId” i zastąp ją w zapytaniu, jeśli to konieczne.

Możesz także uprościć składnię zapytania. SELECT poza opisem sprawy jest zbędna. Ponadto, zakładając, że połączenia Hrabstwa i Miasta są zawsze 1-1, możesz przepisać zapytanie jako:

SELECT op.OrderId, O.Number,  SUM(op.Price) Price,
       CONCAT(A.Detail, ' ', C.Name, ' / ', Ci.Name) AS UserAddress,
       (CASE WHEN O.Status =0 THEN 'Onay Bekliyor'  WHEN O.Status =1 THEN 'Onaylandı' WHEN O.Status = 2 THEN 'Reddedildi' END) Status,
       O.Creation,
       (CASE WHEN O.IsDelivered =0 THEN 'Teslim Edilmedi' ELSE 'Teslim Edildi' END) IsDelivered,
       group_concat(P.Name) as Product
FROM kobiakinlar.product P JOIN
     kobiakinlar.orderproduct op
     ON op.ProductId = P.productId JOIN
     kobiakinlar.order O
     ON O.orderId = op.OrderId JOIN 
     kobiakinlar.address A ON A.addressId = O.AddressId join
     County C
     ON C.CountyId = A.CountyId join
     City AS Ci
     ON C.CityId = Ci.CityId
WHERE O.UserId = arg_UserId
GROUP BY op.OrderId;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. jak zrobić licznik artykułów php?

  2. pobieranie danych z dwóch tabel w mysql, tutaj nie działałoby join

  3. Jak odzyskać bazę danych MySQL z plików .myd, .myi, .frm

  4. Jak używać podzapytania do zdefiniowania przesunięcia Mysql SELECT LIMIT?

  5. Integracja Hadoop i MySQL