2013-07-25 11 views
9

क्या कोई मुझे बता सकता है कि मैं बिना किसी केस-संवेदी के अपने डेटाबेस से DISTINCT कैसे चुन सकता हूं?MySQL केस-असंवेदनशील DISTINCT

मेरे प्रश्न है

SELECT DISTINCT email FROM `jm_order` 

परिणाम तालिका में सभी ईमेल लाता है लेकिन अलग-अलग मामलों के साथ लोगों को दोहराता है। यह उम्मीद की जाती है क्योंकि मूल्य अलग-अलग मामले के अनुसार होते हैं। , उदा,

[email protected] 
[email protected] 
[email protected] 
[email protected] 

लेकिन क्या मैं चाहता हूँ मामले की परवाह किए बिना एक साथ समूहीकृत किया जाना है, एक ही ईमेल के लिए है। उदाहरण के लिए [email protected] और [email protected] उदाहरण के लिए दोहराने से रोकने के लिए मैं अपने एसक्यूएल में क्या समायोजन कर सकता हूं क्योंकि वे अलग-अलग मामले हैं?

+0

की संभावित डुप्लिकेट [ " चयन करें "विभिन्न मामलों को अनदेखा करता है] (https://stackoverflow.com/questions/2644851/select-distinct-ignores- अलग-अलग) –

उत्तर

15

आप भी lower बजाय

SELECT DISTINCT LOWER(email) FROM `jm_order` 

More information उपयोग कर सकते हैं upper समारोह

SELECT DISTINCT UPPER(email) FROM `jm_order` 

उपयोग करने के लिए प्रयास करें।

+0

ग्रेट धन्यवाद ... –

2

इस प्रयास करें:

SELECT DISTINCT LOWER(email) AS email 
FROM `jm_order` 
5

आपको ईमेल (इसलिए यह वास्तव में पंक्तियों में से एक से मेल खाता है) के मामले को संरक्षित करना चाहते हैं, तो आप कर सकते हैं:

select email 
from jm_order 
group by lower(email); 
संबंधित मुद्दे