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

MySQL संग्रहीत प्रक्रिया में स्ट्रिंग की सूची कैसे पास करें?

आपका मित्र यहाँ है FIND_IN_SET मुझे उम्मीद है। मैं पहली बार इस प्रश्न में उस विधि में आया था:इस प्रश्न में भी शामिल है MYSQL - वेरिएबल इनपुट के रूप में कॉमा सेपरेटेड स्ट्रिंग का उपयोग करने वाली संग्रहीत प्रक्रिया

FIND_IN_SET के लिए MySQL दस्तावेज़ यहाँ है http ://dev.mysql.com/doc/refman/5.0/hi/string-functions.html#function_find-in-set

तो आपकी प्रक्रिया बन जाएगी

CREATE DEFINER=`root`@`localhost` 
PROCEDURE `search_equipment`(
    IN equip VARCHAR(100), 
    IN category VARCHAR(255)
)
BEGIN
    SELECT *
    FROM Equipment
    WHERE e_description LIKE CONCAT("%",equip,"%")
    AND FIND_IN_SET(e_type,category)
END

यह श्रेणी स्ट्रिंग पर अल्पविराम-सीमांकित सूची पर निर्भर करता है, और इसलिए आपका कॉलिंग कोड बन जाता है

String type = "I.T. Equipment,Office Supply";

CALL search_equipment('some equipment', type);

(p.s. ने एक टाइपो को ठीक किया, आपके तर्कों में आपने कैटेगॉय टाइप किया था)



  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. कैसे mysql udf json_extract 0.4.0 का उपयोग कर एक json सरणी से पंक्तियों को निकालने के लिए?

  3. पंक्तियों की गिनती संग्रहित करना या केवल पंक्तियों की गणना करना?

  4. पायथन से SSH सुरंग अपने आप बंद हो रही है

  5. मैं XAMPP में MariaDB को MySQL में कैसे बदल सकता हूँ?