sql - Rails group/having/count query -
इस तरह की स्थिति को देखते हुए: कंपनी
has_many उपयोगकर्ता
3 उपयोगकर्ताओं वाले कंपनियां प्राप्त करने के लिए, यह कुशलता से काम करता है:
कंपनी.जेंक्स (उपयोगकर्ता) .समूह ("कंपनियां.आईडी")। आईडी) = 3 ")
लेकिन 0 उपयोगकर्ता (कोई नहीं) कंपनियों को प्राप्त करने का सबसे कारगर तरीका क्या है? क्योंकि, जाहिर है, वही दृष्टिकोण काम नहीं करेगा (जैसा कि शामिल होता है
परिभाषा के अनुसार 0 उपयोगकर्ता के साथ कंपनियों को शामिल नहीं करता है):
company.joins (users) .group (" कंपनियां.आईडी ")। (" COUNT (users.id) = 0 ")
< P> INNER JOIN की बजाय एक बाएं जुड़ें।
company.joins ('LEFT OUTER पर उपयोगकर्ताओं को शामिल करें users.id = users.company_id')
Comments
Post a Comment