Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

Mysql तर्क के आधार पर संग्रहीत प्रक्रिया में गतिशील रूप से क्वेरी स्ट्रिंग का निर्माण करता है

इसका समाधान एक्ज़ीक्यूट और कॉन्सैट का उपयोग करना है:

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. वैसे भी MySQL क्वेरी निष्पादन समय सीमित करने के लिए?

  2. स्कैला स्लिक में एनम्स का उपयोग कैसे करें?

  3. एक जटिल SQL क्वेरी को SQLAlchemy में बदलें

  4. विशिष्ट पंक्ति मान द्वारा गतिशील रूप से स्तंभ नाम प्राप्त करें

  5. मैं एक फ़ील्ड को दूसरे की तुलना में अधिक 'मूल्यवान' बनाने के लिए MySQL पूर्ण टेक्स्ट खोज प्रासंगिकता में कैसे हेरफेर कर सकता हूं?