MySQL unknown column using subquery -
मुझे इस क्वेरी को निष्पादित करते समय एक त्रुटि प्राप्त होती है:
SELECT (SELECT count (cp_projeto_view) .ID) से cp_projeto_view जहां cp_projeto_view.id_projeto = cp_projeto.id और cp_projeto_view.id_pessoa = 467 LIMIT 1) एएस qtde_visualizacoes से cp_projeto WHERE qtde_visualizacoes = 0
त्रुटि है: # 1054 -?! अज्ञात स्तंभ 'जहां खंड'
क्यों qtde_visualizacoes नहीं मौजूद है
आपको बहुत बहुत धन्यवाद
आप जहां
खंड में एक स्तंभ उपनाम का उपयोग नहीं कर सकते हैं (जब तक कि आप एक subquery का उपयोग नहीं करते हैं)। MySQL एक विस्तार है जहाँ आप उपयोग कर सकते हैं होने
है बजाय:
चयन करें (COUNT (cp_projeto_view.id का चयन करें) cp_projeto_view कहां cp_projeto_view.id_projeto = cp_projeto.id और cp_projeto_view से। id_pessoa = 467 सीमा 1) से cp_projeto होने qtde_visualizacoes qtde_visualizacoes के रूप में = 0
संपादित करें:
क्वेरी आप शायद चाहते हैं कि और अधिक की तरह है: पूर्व
< > <कोड> का चयन पी। cp_projecto पी से * जहां नहीं मौजूद है (1 cp_projeto_view पीवी से चयन जहां pv.id_projeto = p.id और pv.id_pessoa = 467) यह सब वापस आ जाएगी cp_projecto
एस जिनके पास cp_projeto_view
में कोई मिलान पंक्तियाँ नहीं हैं। आपकी मूल क्वेरी केवल 0
से एक कॉलम के साथ पंक्तियां लौटाएगी, जो कि बहुत अधिक समझ में नहीं आता है आप गिनती चाहते हैं, तो कार्य करें:
का चयन गिनती (*) cp_projecto पी जहां मौजूद नहीं से cnt के रूप में (1 cp_projeto_view पीवी जहां pv.id_projeto = p.id और pv.id_pessoa से चयन = 467)
और, प्रदर्शन के लिए, cp_projeto_view (projeto, id_pessoa)
पर एक इंडेक्स बनाएं।
Comments
Post a Comment