বাম যোগদান করুন বনাম এসকিউএল সার্ভারে বাম আউটয়ার যোগদান করুন


1594

মধ্যে পার্থক্য কি LEFT JOINএবং LEFT OUTER JOIN?


213
কোনটি! OUTERশব্দ ঐচ্ছিক।
জারলহ

9
ভেন ডায়াগ্রাম এই প্রশ্নের উত্তরের জন্য উপযুক্ত নয়। এই প্রশ্নের উত্তর কোনটিই নয় । প্রথম মন্তব্য দেখুন।
ফিলিপ্সি

3
ভেন চিত্র চিত্রিত আউটপুট সারি পার্থক্য জন্য বিশেষ ক্ষেত্রে এর বনাম বাইরের যোগদানের ভেতরেরযদি কোনও নাল বা সদৃশ সারি ইনপুট না থাকে (সুতরাং আমরা সারি-মূল্যবান মানগুলির সেট হতে একটি টেবিলটি নিতে পারি এবং সাধারণ গণিতের সমতা ব্যবহার করতে পারি) তবে বাম এবং ডান চেনাশোনাগুলিতে বাম এবং ডান জোড়ার আউটপুট টেবিল / সেট রয়েছে । তবে যদি নালস বা সদৃশ সারিগুলি ইনপুট হয় তবে চেনাশোনাগুলির সেটগুলি কী কী তা কীভাবে ব্যাখ্যা করা যায় এবং সেই সেটগুলি কীভাবে ইনপুট এবং আউটপুট টেবিল / ব্যাগগুলির সাথে সম্পর্কিত যে ভেন চিত্রগুলি সহায়ক নয়। আমার মন্তব্যগুলি এখানে ভেন চিত্রের অপব্যবহারের আবার দেখুন।
ফিলিপ্সি

উত্তর:


2235

ডকুমেন্টেশন অনুসারে: FROM (লেনদেন-এসকিউএল) :

<join_type> ::= 
    [ { INNER | { { LEFT | RIGHT | FULL } [ OUTER ] } } [ <join_hint> ] ]
    JOIN

কীওয়ার্ডটি OUTERalচ্ছিক হিসাবে চিহ্নিত করা হয়েছে (বর্গাকার বন্ধনীতে আবদ্ধ)। এই নির্দিষ্ট ক্ষেত্রে, আপনি নির্দিষ্ট করুন OUTERবা না কোনও পার্থক্য রাখে না। মনে রাখবেন যে যোগদানের দফার অন্যান্য উপাদানগুলিও alচ্ছিক হিসাবে চিহ্নিত করা হয়েছে, এগুলি ছেড়ে দিলে একটি পার্থক্য হবে।

উদাহরণস্বরূপ, JOINধারাটির পুরো টাইপ-অংশটি alচ্ছিক, INNERআপনি সুনির্দিষ্টভাবে উল্লেখ করলে ডিফল্ট হয় JOIN। অন্য কথায়, এটি আইনী:

SELECT *
FROM A JOIN B ON A.X = B.Y

এখানে সমতুল্য সিনট্যাক্সের একটি তালিকা রয়েছে:

A LEFT JOIN B            A LEFT OUTER JOIN B
A RIGHT JOIN B           A RIGHT OUTER JOIN B
A FULL JOIN B            A FULL OUTER JOIN B
A INNER JOIN B           A JOIN B

আমি এই অন্যান্য এসও প্রশ্নের যে উত্তরটি রেখেছি তা একবার দেখুন: এসকিউএল বামে FROM লাইনে একাধিক টেবিল বনাম যোগ দিন?

এখানে চিত্র বর্ণনা লিখুন


135
একেবারে সঠিক. আউটারের এএনএসআই -99 সামঞ্জস্যের জন্য অনুমোদিত।
শান রিলি

11
@ লাসেভি.কার্লসন সমতুল্য তালিকার INNER JOINডানদিকে এবং কেবল JOINবামে রাখা ভাল কি না?
নওফাল

8
@ লাসেভি.কার্লসেন আমি ঠিক বুঝিয়েছি যে বাম পাশের সংক্ষিপ্ত রূপ রয়েছে এবং ডানদিকে প্রসারিত ফর্ম রয়েছে। আমি ভেবেছিলাম আপনি যদি এটির জন্যও অনুসরণ করেন তবে এটি সুসংহত করে তুলবে JOIN
নওফাল

30
@ আউটিলার এটি আপনার পূর্বানুমতিপূর্ণ, তবে স্পষ্টতই 451 জন লোক উত্তরটি ভাল বলে মনে করেছেন। সত্যি কথা বলতে কি, যদি একটি উত্তর এক্স এবং অন্য উত্তরটি এক্স বলে এবং ডকুমেন্টেশনের উল্লেখ করে, পাশাপাশি ডকুমেন্টেশনের প্রাসঙ্গিক টুকরোটি উত্তরে অনুলিপি করে, আমার ভোট দ্বিতীয় উত্তরে যায় এবং সে কারণেই আমি আমার উত্তরগুলি এভাবে লিখি আমি করি. যে এক্স দাবি করে যে ভাল না। আপনি যদি এক্স প্রমাণ করতে পারেন তবে এটি আরও ভাল (স্যাটিইউয়ের উত্তরটি সামান্যই নয়)। তবে, আপনি যা চান তা ভাবনা আপনার পূর্বসূচী। আমি প্রশ্ন করি আপনি কেন এটি অর্থহীন বলে মনে করেন, উত্তর কি কোনওভাবেই ভুল?
লাসে ভি কার্লসেন

7
@ আউটিলার এবং সত্যি কথা বলতে, আপনি যদি আমার "দীর্ঘ" উত্তরগুলি পড়তে পছন্দ করেন না, তবে আমার উত্তরটি আপনার জন্য নয়। এটি এখানে অন্য সবার জন্য একই জিনিস নিয়ে ভাবছেন এবং এটি কেন এবং আরও তথ্য কীভাবে পাওয়া উচিত সে সম্পর্কে কিছুটা পটভূমি চান। স্পষ্টতই আপনি এমন একজন লোক যে এই উত্তরটি চাইবে: "কিছুই নয়", তবে দুর্ভাগ্যক্রমে এটি স্ট্যাক ওভারফ্লোতে এখানে কোনও আইনি উত্তর নয়, এটি হওয়াও উচিত নয়।
লাসে ভি কার্লসেন

699

আপনার প্রশ্নের উত্তর দেওয়ার জন্য বাম যোগদান এবং বাম আউটয়ার জয়েনের মধ্যে কোনও পার্থক্য নেই, তারা ঠিক বলেছে যে ...

শীর্ষ স্তরে মূলত 3 ধরণের যোগদান হয়:

  1. INNER
  2. বাহ্য
  3. ক্রস

  1. ইনার জয়েন - উভয় টেবিলের মধ্যে উপস্থিত থাকলে তথ্য আনে।

  2. বহিঃস্থ সংযোগ হয় 3 প্রকারসমূহ:

    1. LEFT OUTER JOIN - বাম টেবিলটিতে উপস্থিত থাকলে তথ্য আনে।
    2. RIGHT OUTER JOIN - সঠিক টেবিলে উপস্থিত থাকলে তথ্য আনে।
    3. FULL OUTER JOIN - দুটি টেবিলের যে কোনও একটিতে উপস্থিত থাকলে তথ্য আনে।
  3. ক্রস যোগদান করুন , নাম হিসাবে বোঝা যায় [n X m]যে কি সবকিছুতে যোগ দেয়।
    দৃশ্যকল্প যেখানে আমরা কেবল (ইন যোগ দেওয়ার জন্য টেবিল তালিকাবদ্ধ করে অনুরূপ FROMধারা SELECT, বিবৃতি) তাদের পৃথক করার জন্য কমা ব্যবহার করে।


উল্লেখযোগ্য বিষয়গুলি:

  • আপনি যদি কেবল উল্লেখ করেন JOINতবে ডিফল্টরূপে এটি একটি INNER JOIN
  • একটি OUTERযোগদান হতে হবে LEFT| RIGHT| FULLআপনি সহজভাবে বলতে পারবেন না OUTER JOIN
  • আপনি OUTERকীওয়ার্ডটি ফেলে দিতে পারেন এবং কেবল LEFT JOINবা বলতে পারেন RIGHT JOINবা FULL JOIN

যারা আরও ভাল উপায়ে এগুলি দেখতে চান তাদের জন্য, দয়া করে এই লিঙ্কটিতে যান: এসকিউএল এর একটি ভিজ্যুয়াল ব্যাখ্যা যোগদান করে


17
খুব ভাল উত্তর। আপনি যদি "বাম আউট জয়েন করেন - প্রিসেট করা থাকে তবে ডান দিক থেকে ম্যাচের ডেটার সাথে বাম টেবিল থেকে সমস্ত ডেটা নিয়ে আসে" এটি পরিষ্কার হয়ে যাবে। ২.১ এর জন্য (এবং ২.২ এর জন্য অনুরূপ পরিবর্তন)
ssh করুন

1
এছাড়াও আপনি কেবল 'টেবিলএ থেকে টেবিলবি, টেবিলবি' নির্বাচন করে ক্রস জয়েন করতে পারেন
om471987

3
দুঃখিত আমি necrobumping করছি, কিন্তু CROSS JOINহিসাবে একই FULL JOIN?
টেকনিক্যাল

9
@ রাইসো না, ক্রস জোইন কার্টেসিয়ান পণ্য, যেমন একটি টেবিলের ক্রস যোগ, একটি টেবিলের সাথে এন সারি থাকা, এম সারি থাকবে, সর্বদা (এন * মি) সারি দেবে যখন একটি সারণীর সম্পূর্ণ আউট জয়েন হয়, এন সারি থাকে, একটি টেবিল সঙ্গে, M সারি থাকার, সর্বোচ্চ এ দেব (ঢ + M) সারি
sactiw

1
@ স্যাকটিউ Cross Joinএবং Full Outer Join... এর মধ্যে পার্থক্য সম্পর্কে আপনার মূল্যবান উত্তরে একটি বিশেষ নোট যুক্ত করার কথা বিবেচনা করুন some
ম্যানুয়েল জর্ডান

354

বাম যোগ এবং বাম বাহিরের যোগদানের মধ্যে পার্থক্য কী?

কিছুই নাLEFT JOINএবং LEFT OUTER JOINসমতুল্য।


13
হ্যালো! কে এটিকে ভোট দিয়েছে? বাম জয়েন্ট বাম বাহ্যিক যোগ হিসাবে সমান।
মিচ গম

7
এটি মাইক্রোসফ্ট এসকিউএল সার্ভার এবং অন্য কোনও এসকিউএল-কমপ্লায়েন্ট আরডিবিএমএসের ক্ষেত্রে।
বিল কারভিন

7
আপনি বিকল্পটি কেন aboutচ্ছিক তা সম্পর্কে কোনও রেফারেন্স বা ব্যাখ্যা যুক্ত করলে ভাল OUTERলাগবে।
জিরো 3

7
সর্বাধিক সংক্ষিপ্ত, সঠিক উত্তর এখানে।
মানাচি

4
ধন্যবাদ. গৃহীত উত্তরের অনেক বেশি তথ্য ছিল যা আমাকে আরও বিভ্রান্ত করেছিল। মূল প্রশ্নটি সোজা বিন্দুটিতে জেনে ও উত্তর দেওয়ার দরকার ছিল আমার কাছে।
বেকন ব্র্যাড

66

আমি একজন পোস্টগ্রিজএসকিউএল ডিবিএ, যতদূর আমি বাইরের সাথে মিলিত না পার্থক্যের মধ্যে পার্থক্য বুঝতে পেরেছি এমন একটি বিষয় যা পুরো ইন্টারনেট জুড়ে যথেষ্ট আলোচনা হয়েছে। আজ অবধি আমি এই দুজনের মধ্যে কোনও তফাত দেখিনি; তাই আমি আরও এগিয়ে গিয়েছিলাম এবং আমি তাদের মধ্যে পার্থক্যটি সন্ধান করার চেষ্টা করি। শেষে আমি এটি সম্পর্কে পুরো ডকুমেন্টেশন পড়েছি এবং আমি এর উত্তর খুঁজে পেয়েছি,

সুতরাং আপনি যদি নথির দিকে নজর রাখেন (কমপক্ষে PostgreSQL এ) আপনি এই শব্দবন্ধটি খুঁজে পেতে পারেন:

"শব্দ INNERএবং OUTERসকল প্রকার ঐচ্ছিক। INNERডিফল্ট করা হয়; LEFT, RIGHTএবং FULLএকটি বাইরের যোগদানের পরোক্ষভাবে।"

অন্য কথায়,

LEFT JOINএবং LEFT OUTER JOINএকই

RIGHT JOINএবং RIGHT OUTER JOINএকই

আমি আশা করি যারা এখনও উত্তরটি খুঁজতে চেষ্টা করছেন তাদের পক্ষে এটি একটি অবদান হতে পারে।


60

Left Joinএবং Left Outer Joinএক এবং একই । পূর্ববর্তীটি পরবর্তীকালের জন্য সংক্ষিপ্তকরণ। একই সম্পর্ক Right Joinএবং Right Outer Joinসম্পর্ক সম্পর্কে বলা যেতে পারে । বিক্ষোভ সাম্য চিত্রিত করবে। প্রতিটি ক্যোয়ারির কার্যকারী উদাহরণগুলি এসকিউএল ফিডলের মাধ্যমে সরবরাহ করা হয়েছে । এই সরঞ্জামটি ক্যোয়ারির হেরফেরের জন্য হাতগুলির অনুমতি দেবে।

প্রদত্ত

এখানে চিত্র বর্ণনা লিখুন

বাম যোগদান এবং বাম বহিরাগত যোগদান

এখানে চিত্র বর্ণনা লিখুন

ফলাফল

এখানে চিত্র বর্ণনা লিখুন


ডান যোগদান এবং রাইট আউটার জয়েন

এখানে চিত্র বর্ণনা লিখুন

ফলাফল

এখানে চিত্র বর্ণনা লিখুন


43

আমি নিম্নলিখিত ক্রমে যোগদান সম্পর্কে ভাবতে সহজ মনে করি:

  • ক্রস জয়েন - উভয় টেবিলের একটি কার্টেসিয়ান পণ্য। সমস্ত এখানে যোগদান শুরু
  • অন্তর্ভুক্ত যোগদান - একটি ফিল্টার যুক্ত একটি ক্রস যোগদান।
  • আউটয়ার জয়েন - অনুপস্থিত উপাদানগুলির সাথে একটি অন্তর্গত যোগদান (বাম বা ডানদিকের টেবিল থেকে) পরে যুক্ত করা হয়েছে।

যতক্ষণ না আমি এই (তুলনামূলক) সহজ মডেলটি আবিষ্কার করেছি, জিনগুলি সর্বদা একটি কালো শিল্প ছিল were এখন তারা নিখুঁত জ্ঞান।

আশা করি এটি বিভ্রান্ত করার চেয়ে আরও বেশি সহায়তা করে।


এটি প্রশ্নের উত্তর দেয় না।
ফিলিপ্সি

33

বাম / রাইট এবং বাম আউটর / রাইট আউটর একই কেন? এই শব্দভাণ্ডার কেন তা ব্যাখ্যা করি। বুঝতে হবে যে বাম এবং রাইটস যোগ দেয় আউটরের যোগদানের নির্দিষ্ট ক্ষেত্রে এবং তাই আউটর লেফট / আউট রাইটের বাইরে আর কিছু হতে পারে না। বহিঃস্থ সংযোগ এছাড়াও বলা হয় পূর্ণ যেমন বাঁদিকে বিরোধিতা বহিঃস্থ এবং অধিকার যোগদান করে যে আংশিক বাহ্য ফলাফল যোগ দিন। প্রকৃতপক্ষে:

Table A | Table B     Table A | Table B      Table A | Table B      Table A | Table B
   1    |   5            1    |   1             1    |   1             1    |   1
   2    |   1            2    |   2             2    |   2             2    |   2
   3    |   6            3    |  null           3    |  null           -    |   -
   4    |   2            4    |  null           4    |  null           -    |   -
                        null  |   5             -    |   -            null  |   5
                        null  |   6             -    |   -            null  |   6

                      OUTER JOIN (FULL)     LEFT OUTER (partial)   RIGHT OUTER (partial)

এই অপারেশনগুলির এলিয়াসগুলি কেন রয়েছে তা এখন স্পষ্ট হয়েছে, পাশাপাশি এটি স্পষ্ট যে কেবলমাত্র 3 টি ঘটনা বিদ্যমান: ইনার, আউটর, ক্রস। OUTER এর জন্য দুটি সাব-কেস সহ। শব্দভাণ্ডার, শিক্ষকরা যেভাবে এটি ব্যাখ্যা করেছেন, তেমনি উপরে কিছু উত্তরও প্রায়শই এটি দেখে মনে হচ্ছে যে এখানে প্রচুর পরিমাণে যোগ দেওয়া হয়েছে। তবে এটি আসলে খুব সাধারণ।


1
"এটি স্পষ্ট যে কেবল 3 টি ক্ষেত্রে রয়েছে": আকর্ষণীয় তবে ত্রুটিযুক্ত। বিবেচনা করুন যে একটি অভ্যন্তরীণ যোগদানটি একটি বিশেষায়িত ক্রস যোগ (অর্থাত্ সরান যোগটি যেখানে অনুচ্ছেদে পূর্বাভাস দেয়)। আরও বিবেচনা করুন যে বাহ্যিক যোগদান কোনওভাবে যোগদান নয়, বরং এমন একটি ইউনিয়ন যেখানে 'অনুপস্থিত' কলামগুলির স্থানে নাল ব্যবহার করা হয়। অতএব, এটি যুক্তিযুক্ত হতে পারে যে ক্রস হল একমাত্র জয়েন্ট প্রয়োজনীয়। আপেক্ষিক তত্ত্বের বর্তমান চিন্তাভাবনাটি নোট করুন যে প্রাকৃতিক যোগদান সমস্ত যোগদানের প্রয়োজনীয়তা পূরণ করে। পাশাপাশি: আপনি কী ব্যাখ্যা করতে পারবেন যে / যদি শব্দভান্ডারটি " JOINবোঝায় INNER JOIN" বাইরের যোগদানের ভোকাবের জন্য আপনার যুক্তির সাথে খাপ খায়?
onedaywhen

27

আপনার প্রশ্নের উত্তর দিতে

SQL এর যে সার্ভার যোগদান করে বাক্য গঠন বাহ্য ঐচ্ছিক

এটি এমএসডিএন নিবন্ধে উল্লেখ করা হয়েছে: https://msdn.microsoft.com/en-us/library/ms177634(v=sql.130).aspx

সুতরাং নীচের তালিকাটি OUTER এর সাথে এবং ছাড়াই সমতুল্য বাক্য গঠনগুলিতে যোগদান করে

LEFT OUTER JOIN => LEFT JOIN
RIGHT OUTER JOIN => RIGHT JOIN
FULL OUTER JOIN => FULL JOIN

অন্যান্য সমতুল্য বাক্য গঠন

INNER JOIN => JOIN
CROSS JOIN => ,

দৃot়ভাবে ডটনেট মোব আর্টিসের সুপারিশ করুন: স্কেল সার্ভারে যোগ দেয় এখানে চিত্র বর্ণনা লিখুন


2
ভেন চিত্রের পুনরায় অপব্যবহারের প্রশ্নটিতে আমার মন্তব্য দেখুন।
ফিলিপ্সি

20

এখানে মাত্র 3 জন যোগদান করেছেন:

  • ক) ক্রস জয়েন = কার্টেসিয়ান (উদা: টেবিল এ, টেবিল বি)
  • খ) অভ্যন্তরীণ যোগ দিন = যোগদান
  • গ) বাইরের যোগদান:

       There are three type of outer join
       1)  Left Outer Join     = Left Join
       2)  Right Outer Join    = Right Join
       3)  Full Outer Join     = Full Join    

আশা করি এটি সাহায্য করবে


1
সুতরাং 5 একসাথে যোগদান।
জেক 2

19

মূলত তিন প্রকারের জোইন রয়েছে

  1. অভ্যন্তরীণ: উভয় সারণীতে উপস্থিত ডেটা আনছে
    • কেবল যোগদানের অর্থ অন্তর্ভুক্ত হওয়া
  2. বাইরের: তিন ধরণের হয়

    • বাম আউট - - শুধুমাত্র বাম টেবিল এবং মিলের শর্তে ডেটা উপস্থিত করে
    • ডানদিকে - - শুধুমাত্র ডান টেবিল এবং মেলা অবস্থায় উপস্থিত তথ্য উপস্থাপন করে
    • সম্পূর্ণ আউট - - যে কোনও বা উভয় সারণী উপস্থাপন করে ডেটা সংগ্রহ করে
    • (বাম বা ডান বা সম্পূর্ণ) আউট জয়েন ডাব্লু / ও "আউটার" লিখতে পারে
  3. ক্রস যোগ দিন: সমস্ত কিছুতে যোগ দেয়


16

সিনট্যাকটিক চিনি, নৈমিত্তিক পাঠকের কাছে এটি আরও স্পষ্ট করে তোলে যে যোগদানটি কোনও অন্তর্গত নয়।


2
তো ... তাহলে সম্পূর্ণ আউটর জয়েন কি?
অ্যামি বি

5
টেবিলএ পুরো আউট জয়েন টেবিলবি আপনাকে তিন ধরণের রেকর্ড দেবে: টেবিলবিতে কোনও রেকর্ড না থাকা টেবিলএর সমস্ত রেকর্ড, টেবিলএতে কোনও মিল নেই রেকর্ড সহ টেবিলবিতে সমস্ত রেকর্ড এবং টেবিলবিতে একটি রেকর্ডের সাথে টেবিলএতে সমস্ত রেকর্ড রয়েছে।
ডেভ ডুপ্লান্টিস

4

এই প্রশ্নের প্রসঙ্গে আমি 2 টি 'অ্যাপ্লাইওয়াই' অপারেটরও পোস্ট করতে চাই:

যোগদান :

  1. অন্তর্ভুক্ত যোগদান করুন = যোগ দিন

  2. আউট জয়েন

    • বাম আউটয়ার জয়েন = বাম যোগদান

    • ডানদিকে যোগ দিন = সঠিক যোগদান

    • সম্পূর্ণ আউট জয়েন = সম্পূর্ণ যোগদান

  3. যোগ দিন

স্ব-যোগদান : এটি যোগদানের ঠিক আলাদা কোনও ধরণের নয়। এটি মূলত উপরের যে কোনও একটিতে যোগ দেয় ব্যবহার করে নিজেই একটি টেবিলে যোগ দিচ্ছে। তবে আমি অনুভব করেছি যে এটি এসকিউএল বিকাশকারী সম্প্রদায়ের অনেকের কাছ থেকে এই শব্দটি শুনবেন বলে প্রসঙ্গে জিন আলোচনাগুলি উল্লেখ করার মতো।

আবেদন করুন :

  1. ক্রস প্রয়োগ করুন - অন্তর্ভুক্ত যোগদানের অনুরূপ (তবে বাম টেবিলের প্রতিটি সারিটির জন্য ডান টেবিলের মধ্যে কিছু গণনা করতে সক্ষম হওয়ার সুবিধা যুক্ত হয়েছে এবং কেবল মিলবে সারিগুলি ফিরিয়ে দিতে হবে)
  2. আউটার অ্যাপ্লাই - লেফট আউটর জয়েনের অনুরূপ (তবে বাম টেবিলের প্রতিটি সারিটির জন্য ডান টেবিলের কিছু গণনা করতে সক্ষম হওয়ার সুবিধা যুক্ত হয়েছে এবং ডান টেবিলের সাথে ম্যাচ নির্বিশেষে সমস্ত সারি বাম টেবিল থেকে ফিরিয়ে আনবে)

https://www.mssqltips.com/sqlservertip/1958/sql-server-cross-apply-and-outer-apply/

https://sqlhints.com/2016/10/23/outer-apply-in-sql-server/

বাস্তব জীবনের উদাহরণ, এসকিউএল-এ কখন আউটর / ক্রস প্রয়োগ করবেন

আমি অ্যাপ্লাইওয়্যার অপারেটরকে খুব উপকারী বলে মনে করি যেহেতু তারা সাবকিউরিতে একই গণনা করার চেয়ে ভাল পারফরম্যান্স দেয়। তারা এসকিউএল সার্ভারের পুরানো সংস্করণগুলিতে অনেক বিশ্লেষণমূলক ফাংশন প্রতিস্থাপন করছে। এ কারণেই আমি বিশ্বাস করি যে যোগদানের সাথে স্বাচ্ছন্দ্য বোধ করার পরে একজন এসকিউএল বিকাশকারীকে পরবর্তী অ্যাপ্লিকেশন অপারেটরগুলি শেখার চেষ্টা করা উচিত।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.