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

Popular posts from this blog

mysql - How to enter php data into a html multiple select box -

java - Can't add JTree to JPanel of a JInternalFrame -

c++ - Cassandra datastax cpp driver - avoiding unnecessary copies -