मैं सोच रहा था कि +1 से कॉलम अपडेट करने का सबसे आसान तरीका क्या होगा? जब उपयोगकर्ता एक नई पोस्ट सबमिट करते हैं तो मैं एक श्रेणी की पोस्ट गिनती अपडेट करूँगा।MySQL अद्यतन कॉलम +1?
धन्यवाद।
मैं सोच रहा था कि +1 से कॉलम अपडेट करने का सबसे आसान तरीका क्या होगा? जब उपयोगकर्ता एक नई पोस्ट सबमिट करते हैं तो मैं एक श्रेणी की पोस्ट गिनती अपडेट करूँगा।MySQL अद्यतन कॉलम +1?
धन्यवाद।
सबसे आसान तरीका है, नहीं दुकान गिनती करने के लिए है मूल्य को प्रतिबिंबित करने के लिए के रूप में यह डेटाबेस में है COUNT समेकित फ़ंक्शन पर निर्भर:
SELECT c.category_name,
COUNT(p.post_id) AS num_posts
FROM CATEGORY c
LEFT JOIN POSTS p ON p.category_id = c.category_id
आप ऊपर वर्णित क्वेरी को घर पर रखने के लिए create a view कर सकते हैं, ताकि आप दृश्य की तरह पूछ सकें जैसे कि आप एक टेबल ...
लेकिन आप संख्या के संचय पर सेट कर रहे हैं, का उपयोग करें:
UPDATE CATEGORY
SET count = count + 1
WHERE category_id = ?
..replacing "?" उपयुक्त मूल्य के साथ।
+1 के अच्छे उत्तर के लिए +1, यदि प्रश्न – Amadan
प्रश्न नहीं है। शुरुआत में मेरे विचार को एक श्रेणी में पदों की मात्रा निर्धारित करने के लिए उस श्रेणी से मेल खाने वाले बिल्ली_आईडी के लिए पोस्ट टेबल जांचना होगा और फिर उन्हें जोड़ना होगा। सोचा कि यह उस तालिका में सीधे लिखने से संसाधन उपभोग करने वाला या कम कुशल हो सकता है। – Cory
जब आपके पास 'p.post_id' पर कोई अनुक्रमणिका है तो यह बहुत तेज़ है। – Amadan
आप कर सकते हैं:
UPDATE
categories
सेट posts
= posts
+1 कहां category_id
= 42;
+1 शाब्दिक प्रश्न – Amadan
कैसे के बारे में:
update table
set columnname = columnname + 1
where id = <some id>
update post set count = count + 1 where id = 101
मुझे खेद है, मुझे समझ में नहीं आता है। क्या आप अपने कॉलम के मान को अपने पुराने मान + 1 पर सेट करने वाली सभी पंक्तियों को अपडेट करना चाहते हैं? – Benoit
@ बेनोइट: ओपी श्रेणी से संबंधित पोस्ट गिनती को स्टोर और अपडेट करना चाहता है। समस्या के अच्छे जवाब के लिए –