python - Prevent duplication with SQLAlchemy query -


मेरे पास निम्न फ़ंक्शन हैं:

  @periodic_task (run_every = crontab (मिनट = " * / 3 ")) डीईएफ़ पेरीक्यूकअपडेट स्टाकआइटम (): # सिम्स टेबल से डेटा प्राप्त करने के लिए # सत्र .कुरी (सिम्स.उपर्चेश_आर्डर, फ़ैशन सीकाउंट (सिम्स.किसिड), सिम्स.क्रेडिट_स्टैम्प, सिम्सस्टेट, सिम्सनेटवर्क) .filter (Sims.stock_sets_id == कोई नहीं) .फ़िल्टर (Sims.purchase_order! = कोई नहीं) .group_by (Sims.purchase_order) .first () प्रिंट आरएसएस # प्रिंट सत्र .query (StockSets.purchase_order) .filter (StockSets.purchase_order = = Res.purchase_order) .first () यदि res: यदि नहीं सत्र .query (स्टॉकसेट्स.आईडी) .फ़िल्टर (स्टॉकसेट्स.उपर्चेश_आर्डर == res.purchase_order)। पहले () और नहीं सत्र .कुछ (स्टॉकसेट्स.उपर्च_आर्डर) .फ़िल्टर (स्टॉकसेट्स .purchase_order == res.purchase_order) .first (): प्रिंट "GOTHERE" # नई डेटा समाचारों को सम्मिलित करने के लिए स्टॉकस्टेट तालिका को तत्काल करें = स्टॉकसैट्स () newss.purchase_order = Res.purchase_order newss.sim_count = res [1] newss.create_stamp = res.create_stamp newss.status = res.status newss.provider_id = res.network # सत्र को नहीं डालने से डुप्लिकेट प्रविष्टि को रोकने के लिए प्रयास करें। खरीद_ऑर्डर) .फ़िल्टर (स्टॉकसेट्स.उपर्चेश_आर्डर == खबरें.पर्चशे_आदेश)। प्रथम (): प्रिंट "GOTHERE-" सत्र.एड (न्यूज) transaction.commit ()  

यह फ़ंक्शन डेटा लेता है एक तालिका से और इसे एक नई तालिका में सम्मिलित करता है मैं प्रविष्टियों के दोहराव को रोका जाना चाहता हूं।

मैंने 2 प्रश्नों को जोड़ने का प्रयास किया है:

  सत्र.क्यूरी (स्टॉकसेट्स.उपर्च_आर्डर) .फ़िल्टर (स्टॉकसेट्स.उपर्चैस_डर == समाचार। Purchase_order) .first ()  

और:

  सत्र.क्यूरी (स्टॉकसेट्स.उपर्च_आर्डर) .फ़िल्टर (स्टॉकसेट्स.उपर्चेश_आर्डर == res.purchase_order)। पहले ()  

लेकिन इसका कोई प्रभाव नहीं पड़ता है जब मैं इसे प्रिंट करने की कोशिश करता हूं, यह कोई भी देता है मैं डुप्लिकेट प्रविष्टियों को रोकने के लिए एक क्वेरी कैसे बना सकता हूँ?


Comments