Monday, 15 February 2010

mysql - SQL Update using values from other columns in same table -


मेरे पास एक SQL तालिका है, "डेटा", निम्न कॉलम के साथ: id (int), date1 (datetime), date2 (Datetime), अंतर (फ्लोट)

मैं इस तालिका को अपडेट करना चाहूंगा ताकि "अंतर" कॉलम में फरवरी (एक फ्लोट के रूप में) की तारीख 2 और दिनांक 1 के बीच अंतर हो, केवल जब date2 '0000-00-00 00:00:00' के बराबर नहीं है

मैं लाइनों के साथ कुछ की सोच रहा था

  अद्यतन डेटा m SET difference = datediff (" Hh ", m.date2, m0.date1) / 8765 - प्रति वर्ष 8765 घंटे हैं इसलिए यह मुझे मेरी फ्लोट से डेटा M0 WHERE देना चाहिए एमएड = एम 0.आईडी और एम डीटीटी 2 & lt; & gt; '0000-00-00 00:00:00';  

फिर भी जब मैं कोशिश करता हूं मुझे "SQL वाक्यविन्यास त्रुटि बताते हुए एक त्रुटि मिलती है। पास के डेटा का उपयोग करने के लिए सही वाक्य रचना के लिए अपना MySQL सर्वर संस्करण जांचें SET अंतर = दिनांकित (" hh, m.date2 , M0.date10 / 8765) लाइन से 1 '' से ''

वांछित परिणाम पाने के लिए मैं अपने एसक्यूएल स्टेटमेंट को कैसे संशोधित करूं?

संपादित करें:

मैं इस एसक्यूएल स्टेटमेंट को चलाने के लिए xampp के phpMyAdmin इंटरफ़ेस का उपयोग कर रहा हूं

बयान प्रपत्र पर होना माना जाता है:

  अद्यतन तालिका SET कॉलम 1 = अभिव्यक्ति 1, स्तंभ 2 = अभिव्यक्ति 2, ... कहां स्थितियां;  

आपका से खंड इस प्रकार है अप्रासंगिक।

आप अन्य तालिकाओं से लिंक करने के लिए शामिल और उप चयन करें -कुहारों का उपयोग कर सकते हैं।

- यह कैसे प्राप्त करें (वास्तव में, एक पूर्ण डुप्लिकेट):

  अद्यतन टैबिये एक जॉइन टैबिल बी पर a.join_colA = b.join_colb SET a.columnToUpdate = [कुछ]  

No comments:

Post a Comment