DISTINCT
उस तरह से काम नहीं करता है, मान लौटाए जा रहे सभी स्तंभों में अलग-अलग होने चाहिए।
आप हमेशा हैश
. पर एक समग्र फ़ंक्शन का उपयोग कर सकते हैं फ़ंक्शन और नाम से समूह
जो एक हैश
return लौटाएगा प्रत्येक नाम
. के लिए मान :
SELECT name, min(hash) hash
FROM my_table
WHERE name LIKE '%An%'
GROUP BY name;
देखें SQL Fiddle with Demo ।
नोट: GROUP BY
. के साथ समग्र फ़ंक्शन का उपयोग करना यह सुनिश्चित करेगा कि आप हैश
. के लिए अपेक्षित मान हमेशा लौटाएंगे कॉलम। जब आप GROUP BY
नहीं करते हैं या आइटम को SELECT
. में एकत्रित करें सूची, आप अप्रत्याशित परिणाम लौटा सकते हैं। (देखें /कोड>
)
MySQL डॉक्स से: