Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Mysql tự động xây dựng chuỗi truy vấn trong một thủ tục được lưu trữ dựa trên logic

Giải pháp là sử dụng lệnh execute và concat:

CREATE DEFINER=`root`@`localhost` PROCEDURE `test`(input VARCHAR(15))
BEGIN
SET @input = input;

if @input="asc" then
    SET @sort = " order by ActivityLogKey asc";
elseif @input = "desc" then
    SET @sort = " order by ActivityLogKey desc";
else
    SET @sort ="";
end if;

SET @query = CONCAT('select * from activitylog ',@sort,' limit 0, 5');

PREPARE stmt FROM @query;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

END



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JPA:làm cách nào để duy trì một Chuỗi vào một trường cơ sở dữ liệu, nhập Văn bản MYSQL

  2. Vấn đề cú pháp truy vấn mysql Node.js CẬP NHẬT Ở ĐÂU

  3. Không thể tải Trình điều khiển QMYSQL trên PySide2

  4. Nhận uuid được tạo sau khi chèn php

  5. Xóa Doctrine QueryBuilder với các phép nối