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

Друг #1054:Неизвестна колона в мистерията „списък с полета“.

За мен присвояване с CASE израз е малко объркващо (трудно за четене), така че бих използвал CASE клауза с INTO @var вместо това:

BEGIN
CASE
    WHEN vtable = 'daily_operation' THEN 
        SELECT start_time INTO @result FROM daily_operation WHERE (client_id = vclient_id AND user_id = vuser_id AND id = vid AND edition_id = vedition_id) LIMIT 1;
    WHEN vtable = 'monthly_operation' THEN 
        SELECT start_time INTO @result FROM monthly_operation WHERE (client_id = vclient_id AND user_id = vuser_id AND id = vid AND edition_id = vedition_id) LIMIT 1;
END CASE;

RETURN @result;
END

Забележете, че не е необходимо да ДЕКЛАРИРАТЕ @session_variables, използвани в SP.




  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 Добавяне на външен ключ

  2. Събития от страна на сървъра с PHP и MySQL

  3. C# с MySQL - Грешка:Guid трябва да съдържа 32 цифри с 4 тирета, когато се опитвате да отворите връзката

  4. Как да предоставите изпълнение на конкретна съхранена процедура на потребителя

  5. JPA RollbackException, но не и в модулен тест