Mysql
 sql >> база данни >  >> RDS >> Mysql

MySql заявката се изпълнява, но не работи в sp

Почти съм сигурен, че причината е объркването между UserId и o.UserId.

В контекста на заявката той не знае, че имате предвид аргумента на sp. Променете името на аргумента на нещо като "arg_UserId" и го заменете в заявката, където е подходящо.

Можете също така да опростите синтаксиса на вашата заявка. SELECT извън твърденията на случая е излишен. Също така, ако приемем, че присъединяванията към County и City винаги са 1-1, можете да пренапишете заявката като:

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. Показване на записи от MySQL база данни с помощта на JTable в Java

  2. Създайте ненужни URL адреси в LAMP конфигурация

  3. MyCLI – MySQL/MariaDB клиент с автоматично довършване и подчертаване на синтаксиса

  4. Ajax Pagination с Jquery, PHP, Mysql

  5. PyMySQL не може да се свърже с MySQL на localhost