নির্দিষ্ট কলামের জন্য কেবল সেই রেকর্ডগুলি নির্বাচন করুন যাগুলির বিভিন্ন / একাধিক মান রয়েছে


11

নীচে আমার সদস্যতার সারণির উদাহরণ দেওয়া আছে। ইমেল ক্ষেত্রে একাধিক মান রয়েছে এমন কিছু রেকর্ড রয়েছে। আমি কেবল সেই রেকর্ডগুলি নির্বাচন করতে চাই যার একাধিক ইমেল মান রয়েছে:

সদস্য টেবিল

ID   LASTNAME    FIRSTNAME    EMAIL
567  Jones       Carol        carolj@gmail.com
567  Jones       Carol        caroljones@aol.com
678  Black       Ted          tedblack@gmail.com
908  Roberts     Cole         coleroberts@gmail.com
908  Roberts     Cole         coler@aol.com
908  Roberts     Cole         colerobersc@hotmail.com

আমি ফলাফলটি চাই:

567  Jones       Carol        carolj@gmail.com
567  Jones       Carol        caroljones@aol.com
908  Roberts     Cole         coleroberts@gmail.com
908  Roberts     Cole         coler@aol.com
908  Roberts     Cole         colerobersc@hotmail.com

লক্ষ্য করুন যে টেড ব্ল্যাক অনুপস্থিত কারণ তার ইমেল ঠিকানার জন্য কেবলমাত্র একটি প্রবেশ রয়েছে।

আমার স্পষ্ট করে বলা উচিত যে আমার সদস্যতার টেবিলে 4 টিরও বেশি কলাম রয়েছে। ফোন এবং ঠিকানা ইত্যাদির জন্য অতিরিক্ত কলাম রয়েছে এবং সদস্যের একাধিক এন্ট্রি থাকতে পারে কারণ তার একাধিক ফোন নম্বর বা ঠিকানা রয়েছে। আমি কেবল সেই ব্যক্তিদের ক্যাপচার করতে চাই যাদের একাধিক ইমেল ঠিকানা রয়েছে।

এটি একটি ডাটাবেস পরিষ্কারের অংশ এবং একটি প্রাথমিক কী যুক্ত করা হবে। আমার আরও স্পষ্ট করে বলা উচিত যে কিছু ব্যক্তির একই ইমেল ঠিকানা সহ একাধিক এন্ট্রি থাকতে পারে। এই পর্যায়ে আমি একই ইমেল ঠিকানা দিয়ে সেই একাধিক এন্ট্রি ক্যাপচার করতে চাই না তবে কেবলমাত্র যারা বিভিন্ন ইমেল ঠিকানা সহ একাধিক প্রবেশিকা রয়েছে।

উত্তর:


8

আপনি যেমন কিছু করতে পারেন:

select distinct x.id, x.lastname, x.firstname, x.email
from t as x
join (
    select id
    from t
    group by id
    having count(distinct email) > 1
) as y
    on x.id = y.Id    

3
select x.* 
from member as x
where x.id IN

    (
    select id
    from member
    group by id
    having count(distinct email) > 1
    )
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.