php - MySQL between query returning redundant results -


  का चयन करें webcal_entry.cal_id, webcal_entry.cal_name, webcal_entry.cal_priority, webcal_entry.cal_date, webcal_entry.cal_time, webcal_entry_user Cal_status, webcal_entry.cal_create_by, webcal_entry.cal_access, webcal_entry.cal_dation, webcal_entry_user.cal_category से वेबकल_ंट्री, webcal_entry_user WHERE Webcal_entry.cal_date के बीच '200 9 601' और '200 9 631'  

जब मैं क्वेरी निष्पादित करें php वापस फेंकता है:

  mysql_query (): परिणाम सेट को सहेजने में असमर्थ MySQL क्लाइंट स्मृति से बाहर हो गया  

जब मैं परिणाम देखता हूं कि यह 2.8 मिलियन परिणाम वापस खींच रहा है। इस तालिका में 7,241 पंक्तियाँ हैं।

मुझे पता है कि मैं उपयोग कर सकता हूं, लेकिन मैं वास्तव में उस मार्ग को नहीं जाना चाहता।

किसी भी मदद के लिए धन्यवाद!

आप webcal_entry और webcal_entry_user तालिकाओं में अपने में शामिल हो रहे हैं से खंड पर आपके पास webcal_entry_user से आने वाली पंक्तियों को सीमित करने के लिए शामिल हों या WHERE की शर्तें नहीं हैं I इसका परिणाम दो तालिकाओं का कार्टेसियन उत्पाद होगा, जिसका मूल रूप से आप प्रत्येक webcal_entry पंक्ति को मान्य cal_date , गुणा / > webcal_entry_user तालिका में पंक्तियों की संख्या से।

दूसरे शब्दों में, यदि आप webcal_entry_user में 400 पंक्तियाँ हैं तो आपको 400 * 7241 वापस मिलेंगे = 2.8 मिलियन पंक्तियां! ओह!


Comments

Popular posts from this blog

c++ - Linux and clipboard -

What is expire header and how to achive them in ASP.NET and PHP? -

sql server - How can I determine which of my SQL 2005 statistics are unused? -