आपको .format() . का उपयोग नहीं करना चाहिए एक एसक्यूएल क्वेरी में मान शामिल करने के लिए। इसके बजाय sql पैरामीटर का उपयोग करें:
sql += " WHERE provider IN ({}) GROUP BY date ORDER BY date ASC".format(', '.join(['%s'] * len(providers)))
cursor.execute(sql, providers)
जहां providers मूल सूची है।
विचार in . के साथ SQL क्वेरी जेनरेट करना है आपकी सूची में प्रदाताओं की संख्या से मेल खाने वाले SQL पैरामीटर सिंटैक्स का उपयोग करके परीक्षण करें:WHERE provider in (%s, %s) ... दो-प्रदाता सूची के लिए। हां, MySQLdb sql पैरामीटर सिंटैक्स पुरानी शैली के पायथन स्वरूपण सिंटैक्स को प्रतिध्वनित करता है, लेकिन यह वही बात नहीं है।