"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > Laravel Eloquent में SQL_MODE=ONLY_FULL_GROUP_BY विरोध को कैसे हल करें?

Laravel Eloquent में SQL_MODE=ONLY_FULL_GROUP_BY विरोध को कैसे हल करें?

2024-11-04 को प्रकाशित
ब्राउज़ करें:752

How to Resolve SQL_MODE=ONLY_FULL_GROUP_BY Conflict in Laravel Eloquent?

Laravel Eloquent में SQL_MODE=ONLY_FULL_GROUP_BY संघर्ष को हल करना

समूह-दर-क्वेरी करने के लिए Eloquent का उपयोग करते समय, आपको संबंधित त्रुटि का सामना करना पड़ सकता है sql_mode=only_full_group_by के लिए असंगत सेटिंग्स। यह त्रुटि तब हो सकती है जब गैर-एकत्रित कॉलम SELECT सूची में शामिल होते हैं जो ग्रुप बाय क्लॉज का हिस्सा नहीं हैं।

इस समस्या को हल करने के लिए, आप अपने डेटाबेस में निम्नलिखित सेट करके सख्त MySQL मोड को अक्षम कर सकते हैं कॉन्फ़िगरेशन फ़ाइल:

'connections' => [
    'mysql' => [
        'strict' => false,
    ]
]

'सख्त' को गलत पर सेट करके, आप MySQL को ऐसा व्यवहार करने की अनुमति दे रहे हैं जैसे कि वह MySQL 5.6 मोड में चल रहा हो, जो sql_mode=only_full_group_by द्वारा लगाए गए सख्त ग्रुपिंग नियमों को लागू नहीं करता है।

वैकल्पिक रूप से, आप यह सुनिश्चित करने के लिए अपनी एलोक्वेंट क्वेरी को संशोधित कर सकते हैं कि चयन सूची में सभी कॉलम या तो एकत्रित हैं या ग्रुप बाय क्लॉज में शामिल हैं। उदाहरण के लिए, आप आवश्यक एकत्रीकरण जोड़ने के लिए 'कच्ची' विधि का उपयोग कर सकते हैं:

$products = Product::where('status', 1)
    ->where('stock', '>', 0)
    ->where('category_id', '=', $category_id)
    ->groupBy('store_id')
    ->orderBy('updated_at', 'desc')
    ->selectRaw('*, COUNT(*) AS total_products')
    ->take(4)
    ->get();
विज्ञप्ति वक्तव्य यह लेख यहां पुनर्मुद्रित है: 1729224796 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.कॉम से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3