ຄວາມແຕກຕ່າງລະຫວ່າງການເຂົ້າຮ່ວມຊ້າຍແລະນອກຊ້າຍເຂົ້າຮ່ວມໃນ SQL - ຄວາມແຕກຕ່າງທັງຫມົດ

 ຄວາມແຕກຕ່າງລະຫວ່າງການເຂົ້າຮ່ວມຊ້າຍແລະນອກຊ້າຍເຂົ້າຮ່ວມໃນ SQL - ຄວາມແຕກຕ່າງທັງຫມົດ

Mary Davis

ສາ​ລະ​ບານ

ຖານ​ຂໍ້​ມູນ​ປະ​ກອບ​ດ້ວຍ​ການ​ເກັບ​ກໍາ​ຂໍ້​ມູນ​ທີ່​ມີ​ໂຄງ​ສ້າງ​ໂດຍ​ປົກ​ກະ​ຕິ​ເກັບ​ຮັກ​ສາ​ເອ​ເລັກ​ໂຕຣ​ນິກ​ໃນ​ລະ​ບົບ​ຄອມ​ພິວ​ເຕີ​. ຖານຂໍ້ມູນທີ່ແຕກຕ່າງກັນຫຼາຍອັນ, ເຊັ່ນ: SQL Server, Oracle, PostgreSQL, ແລະ MySQL, ໂດຍທົ່ວໄປແລ້ວໃຊ້ພາສາເພື່ອຈັດການຂໍ້ມູນ .

ໜຶ່ງພາສານັ້ນເອີ້ນວ່າ SQL. SQL ມີຄຳສັ່ງ Joins ທີ່ແຕກຕ່າງກັນໃນຮູບແບບຂອງ Inner Join, Left Join ແລະ Right Join.

ດັ່ງທີ່ເຈົ້າອາດຈະຮູ້, ການເຂົ້າຮ່ວມໃນ SQL ແມ່ນໃຊ້ເພື່ອປະກອບແຖວຈາກສອງຕາຕະລາງ ຫຼືຫຼາຍກວ່ານັ້ນຈາກຖັນທີ່ກ່ຽວຂ້ອງ . ນີ້ອາດຈະເຮັດໃຫ້ເກີດຄໍາຖາມກ່ຽວກັບສິ່ງທີ່ການປ່ຽນແປງອື່ນໆເຮັດ.

ມັນສັບສົນເລັກນ້ອຍ, ຂ້ອຍແນ່ໃຈວ່າ! ແຕ່ຢ່າກັງວົນ, ຂ້ອຍຈະໃຫ້ບັນຊີລາຍລະອຽດກ່ຽວກັບສິ່ງທີ່ພວກເຂົາຫມາຍເຖິງ, ແລະຫວັງວ່າ, ມັນຈະຊ່ວຍໃຫ້ທ່ານເຂົ້າໃຈໄດ້ດີຂຶ້ນ.

ໄປ​ເບິ່ງ​ກັນ​ເລີຍ!

ເບິ່ງ_ນຳ: ຄວາມແຕກຕ່າງລະຫວ່າງ Queen ແລະ Empress ແມ່ນຫຍັງ? (ຊອກຫາ) – ຄວາມແຕກຕ່າງທັງໝົດ

SQL ແມ່ນຫຍັງ?

SQL ຫຍໍ້ມາຈາກ Structured Query Language. ນີ້ແມ່ນພາສາທີ່ໃຊ້ໂດຍຖານຂໍ້ມູນຕ່າງໆເພື່ອຂຽນ ແລະສອບຖາມຂໍ້ມູນ. ມັນອະນຸຍາດໃຫ້ຈັດການຂໍ້ມູນໂດຍໃຊ້ຕາຕະລາງແລະສະແດງພາສາເພື່ອສອບຖາມຕາຕະລາງເຫຼົ່ານີ້ແລະວັດຖຸທີ່ກ່ຽວຂ້ອງອື່ນໆ, ເຊັ່ນ: ທັດສະນະ, ຫນ້າທີ່, ຂັ້ນຕອນ, ແລະອື່ນໆ.

Donald Chamberlin ແລະ Raymond Boyce ແມ່ນ ຜູ້ອອກແບບ. ຂອງ SQL, ເຊິ່ງພວກເຂົາເຮັດເພື່ອຈັດການຂໍ້ມູນ. ຮູບແບບຂອງພວກເຂົາແມ່ນອີງໃສ່ການເຮັດວຽກຂອງ Edgar Frank Codd, ຜູ້ທີ່ເຮັດວຽກສໍາລັບ IBM ແລະ invented ຖານຂໍ້ມູນທີ່ກ່ຽວຂ້ອງໃນ 70s.

ໃນເບື້ອງຕົ້ນ, ມັນຖືກເອີ້ນວ່າ SEQUEL, ແຕ່ມັນຖືກຫຍໍ້ເປັນ SQL ເນື່ອງຈາກສະເພາະບັນຫາເຄື່ອງໝາຍການຄ້າ. ຢ່າງໃດກໍຕາມ, ທ່ານຍັງສາມາດໂທຫາພວກເຂົາວ່າ SEQUEL ຖ້າທ່ານຕ້ອງການ.

ດ້ວຍ SQL, ທ່ານສາມາດໃສ່, ລຶບ, ແລະອັບເດດຂໍ້ມູນ ແລະສ້າງ, ລຶບ, ຫຼືປ່ຽນວັດຖຸຖານຂໍ້ມູນອື່ນໆ. ຄໍາສັ່ງ SQL ມາດຕະຖານແມ່ນ “ ເລືອກ”, “ລຶບ”, “ແຊກ”, “ອັບເດດ”, “ສ້າງ”, ແລະ “ວາງ” . ເຫຼົ່ານີ້ສາມາດເຮັດສໍາເລັດທຸກສິ່ງທຸກຢ່າງທີ່ຫນຶ່ງຕ້ອງເຮັດໃນຖານຂໍ້ມູນ.

ນອກຈາກນັ້ນ, ພາສານີ້ຖືກໃຊ້ໃນຫຼາຍຖານຂໍ້ມູນເພື່ອຊ່ວຍຈັດການຂໍ້ມູນ ແລະວັດຖຸຖານຂໍ້ມູນ. ຖ້າມັນຟັງແລ້ວສັບສົນສຳລັບເຈົ້າ, ນີ້ແມ່ນວິດີໂອທີ່ອະທິບາຍວ່າ SQL ແມ່ນຫຍັງສຳລັບຜູ້ເລີ່ມຕົ້ນ:

ຖານຂໍ້ມູນສາມາດເຮັດວຽກໄດ້ໂດຍບໍ່ຕ້ອງໃຊ້ພາສາບໍ?

ເປັນຫຍັງພວກເຮົາຈຶ່ງໃຊ້ SQL?

ມັນງ່າຍດາຍຫຼາຍ. ພວກເຮົາຈະບໍ່ເຂົ້າໃຈຖານຂໍ້ມູນທີ່ບໍ່ມີ SQL. ໃນລັກສະນະດຽວກັນ, ພວກເຮົາບໍ່ສາມາດສັ່ງໃຫ້ຖານຂໍ້ມູນໂດຍບໍ່ມີມັນເພາະວ່າ SQL ເປັນລະບົບທີ່ໃຊ້ໃນການສື່ສານກັບຖານຂໍ້ມູນ.

SQL ລະບົບປະຕິບັດວຽກງານເຊັ່ນ: ລຶບ, ເພີ່ມ, ຫຼືປ່ຽນແປງຂໍ້ມູນ . ລະບົບນີ້ຖືກນໍາໃຊ້ໂດຍທົ່ວໄປເພື່ອເຮັດໃຫ້ ມັນງ່າຍຕໍ່ການຈັດການຂໍ້ມູນຈໍານວນຫລາຍ ໂດຍການຄຸ້ມຄອງມັນຢ່າງມີປະສິດທິພາບ. ລະບົບການຈັດການຖານຂໍ້ມູນຄວາມສຳພັນມາດຕະຖານຈຳນວນໜຶ່ງທີ່ໃຊ້ SQL ລວມມີ Oracle, Sybase, Microsoft Access, ແລະ Ingres.

Inner Join ແມ່ນຫຍັງ ແລະ Outer Join? ເນື້ອໃນຂອງຕາຕະລາງທີ່ແຕກຕ່າງກັນ. ທ່ານສາມາດລວມຂໍ້ມູນໄດ້ຫຼາຍວິທີໂດຍການລະບຸວ່າທ່ານຕ້ອງການຂໍ້ມູນແນວໃດປະສົມປະສານ ແລະປະເພດຂອງການເຂົ້າຮ່ວມທີ່ທ່ານຕ້ອງການໃຊ້.

ການເຂົ້າຮ່ວມພາຍໃນແມ່ນການເຂົ້າຮ່ວມທີ່ສົ່ງຄືນແຖວທັງໝົດຈາກທັງສອງຕາຕະລາງທີ່ເຂົ້າຮ່ວມ ເຊິ່ງບັນທຶກ ທີ່ສຳຄັນຂອງຕາຕະລາງໜຶ່ງແມ່ນຄືກັນກັບບັນທຶກ ສຳຄັນຂອງຕາຕະລາງອື່ນ.

ການເຂົ້າຮ່ວມປະເພດນີ້ຕ້ອງການຕົວປະຕິບັດການປຽບທຽບເພື່ອຈັບຄູ່ແຖວຈາກຕາຕະລາງທີ່ເຂົ້າຮ່ວມທີ່ຮອງຮັບຊ່ອງຂໍ້ມູນມາດຕະຖານ ຫຼືຖັນຂອງທັງສອງຕາຕະລາງ.

Outer Join ສາມາດສົ່ງຄືນບໍ່ໄດ້. -ການຈັບຄູ່ແຖວໃນນຶ່ງ ຫຼືທັງສອງຕາຕະລາງ . ໂດຍພື້ນຖານແລ້ວ, ມັນສົ່ງຄືນແຖວທັງຫມົດຈາກຕາຕະລາງທັງຫມົດທີ່ຕອບສະຫນອງເງື່ອນໄຂ.

ມີຫຼາຍປະເພດທີ່ແຕກຕ່າງກັນຂອງ Outer Joins. ເຫຼົ່ານີ້ລວມມີການເຂົ້າຮ່ວມຊ້າຍ, ເຂົ້າຮ່ວມຂວາ, ແລະເຂົ້າຮ່ວມນອກເຕັມ.

ເບິ່ງ_ນຳ: ຄວາມແຕກຕ່າງລະຫວ່າງສອງປະໂຫຍກທີ່ວ່າ "ຢູ່ໃນໂຮງຫມໍ" ແລະ "ຢູ່ໂຮງຫມໍ" ແມ່ນຫຍັງ? (ການ​ວິ​ເຄາະ​ລະ​ອຽດ​) – ຄວາມ​ແຕກ​ຕ່າງ​ທັງ​ຫມົດ​

ນີ້​ແມ່ນ​ຕາ​ຕະ​ລາງ​ສັງ​ລວມ​ຫນ້າ​ທີ່​ສໍາ​ຄັນ​ຂອງ​ການ​ເຂົ້າ​ຮ່ວມ​ທີ່​ມີ​ຢູ່​ໃນ SQL:

ປະ​ເພດ​ຂອງ Joins:<2 ຟັງຊັນ :
Inner Join ອັນນີ້ສົ່ງຄືນແຖວເມື່ອມີຢ່າງໜ້ອຍໜຶ່ງຄູ່ໃນຕາຕະລາງທັງສອງ.
ການ​ເຊື່ອມ​ຕໍ່​ນອກ​ຊ້າຍ ອັນ​ນີ້​ຈະ​ກັບ​ຄືນ​ແຖວ​ທັງ​ຫມົດ​ຈາກ​ຕາ​ຕະ​ລາງ​ຊ້າຍ​ຮ່ວມ​ກັບ​ແຖວ​ທີ່​ກົງ​ກັນ​ຈາກ​ຕາ​ຕະ​ລາງ​ຂວາ​.
ການ​ເຊື່ອມ​ຕໍ່​ດ້ານ​ນອກ​ຂວາ ອັນ​ນີ້​ຈະ​ສົ່ງ​ຄືນ​ແຖວ​ທັງ​ໝົດ​ຈາກ​ຕາ​ຕະ​ລາງ​ຂວາ​ໂດຍ​ລວມ​ກັບ​ແຖວ​ທີ່​ກົງ​ກັນ​ຈາກ​ຕາ​ຕະ​ລາງ​ຊ້າຍ.
ການ Join ພາຍນອກເຕັມ ອັນນີ້ລວມເອົາ Join ຊ້າຍນອກ ແລະ ຂວານອກ Join. ສົ່ງຄືນແຖວຈາກຕາຕະລາງທັງສອງເມື່ອມີເງື່ອນໄຂ.

ອັນນີ້ສະແດງຄວາມແຕກຕ່າງລະຫວ່າງສີ່ Joins ໃນ SQL.

ຄວາມແຕກຕ່າງລະຫວ່າງການເຂົ້າຮ່ວມພາຍໃນ ແລະ ພາຍນອກ

ມີຫຼາຍກວ່ານັ້ນ. ຄວາມແຕກຕ່າງທີ່ ສຳ ຄັນລະຫວ່າງການຮ່ວມພາຍໃນແລະນອກແມ່ນວ່າ ການເຊື່ອມໂຍງພາຍໃນມັກຈະສົ່ງຜົນໃຫ້ຈຸດຕັດກັນຂອງສອງຕາຕະລາງ. ໃນທາງກົງກັນຂ້າມ, Outer Joins ສົ່ງຜົນໃຫ້ການຜະສົມຂອງສອງຕາຕະລາງ.

ໂດຍພື້ນຖານແລ້ວ, Inner Join ຜົນໄດ້ຮັບໃນສ່ວນທີ່ທັບຊ້ອນກັນຂອງສອງຊຸດຂໍ້ມູນ, ດັ່ງທີ່ສະແດງຢູ່ໃນຮູບຂ້າງລຸ່ມນີ້. ທ່ານຈະຮວມພຽງແຕ່ແຖວມາດຕະຖານເຫຼົ່ານັ້ນຢູ່ໃນຕາຕະລາງທັງສອງສຳລັບການເຂົ້າຮ່ວມພາຍໃນ. ໃນອີກດ້ານຫນຶ່ງ, Outer Joins ສົ່ງຄືນບັນທຶກທັງຫມົດທີ່ມີຄ່າໃນຕາຕະລາງຊ້າຍຫຼືທີ່ເຫມາະສົມ.

ຕົວເຊື່ອມຕໍ່ນອກລວມມີແຖວທີ່ກົງກັນ ແລະແຖວທີ່ບໍ່ກົງກັນຈາກຕາຕະລາງ. ນອກຈາກນັ້ນ, Outer Join ແຕກຕ່າງຈາກການເຂົ້າຮ່ວມພາຍໃນໃນ ການຈັດການເງື່ອນໄຂການຈັບຄູ່ທີ່ບໍ່ຖືກຕ້ອງ.

Left Outer Join ປະກອບດ້ວຍ Left Outer Join + Inner Join. ໃນຂະນະທີ່ Right Outer Join ແມ່ນຍັງປະກອບດ້ວຍ Right Outer Join + Inner Join. Full Outer Join ປະກອບມີ ທັງໝົດ.

Left Join (ມັນຄືກັນກັບ Left Outer Join in SQL ບໍ?)

ບາງທີເຈົ້າອາດຈະເຄີຍໄດ້ຍິນ. ອອກຈາກເຂົ້າຮ່ວມໃນ SQL ຄືກັນບໍ? ແລ້ວ, ມັນເປັນພຽງແຕ່ Left Outer Join ດຽວກັນ. ພວກມັນມີສອງຊື່ທີ່ແຕກຕ່າງກັນສໍາລັບຟັງຊັນດຽວກັນ.

ການເຂົ້າຮ່ວມຊ້າຍແມ່ນຄືກັນກັບ Left outer join ໃນ SQL, ແລະພວກມັນແມ່ນອັນດຽວກັນ. Left Join ແມ່ນພຽງແຕ່ shorthand ສໍາລັບການ Join ດ້ານນອກຊ້າຍ. ຄໍາ"ນອກ" ພຽງແຕ່ເຮັດໃຫ້ມັນກົງໄປກົງມາຫຼາຍສິ່ງທີ່ການດໍາເນີນງານແມ່ນ, ແຕ່ວ່າປຸ່ມທັງສອງປະຕິບັດຫນ້າດຽວກັນ.

ເປັນຫຍັງການເຂົ້າຮ່ວມຊ້າຍຈຶ່ງເອີ້ນວ່າ Left Outer Join?

ທ່ານ​ຈະ​ມີ​ທາງ​ເລືອກ​ທີ່​ຈະ​ເອີ້ນ​ມັນ​ໂດຍ​ຊື່​ຂະ​ຫຍາຍ​ຂອງ​ມັນ​ຫຼື​ທາງ​ລັດ​ຫນຶ່ງ​. ນອກ​ຈາກ​ນັ້ນ​, ພວກ​ເຂົາ​ເຈົ້າ​ພຽງ​ແຕ່​ສິ່ງ​ດຽວ​ກັນ​.

ຈື່ໄວ້ວ່າ Join ນີ້ສົ່ງຄືນແຖວທັງໝົດໃນຕາຕະລາງຢູ່ເບື້ອງຊ້າຍ ແລະແຖວທີ່ກົງກັນຢູ່ເບື້ອງຂວາຂອງ Join. ຖ້າບໍ່ມີຂ້າງທີ່ກົງກັນຢູ່ເບື້ອງຂວາ, ຜົນໄດ້ຮັບແມ່ນ null.

ສະນັ້ນ ຖ້າພວກເຮົາເຂົ້າຮ່ວມສອງຕາຕະລາງ A ແລະ B, SQL Left Outer Join ຈະສົ່ງຄືນແຖວທັງໝົດໃນຕາຕະລາງຊ້າຍ. , ເຊິ່ງແມ່ນ A, ແລະແຖວທັງໝົດທີ່ກົງກັນໃນຕາຕະລາງອື່ນ B ຢູ່ເບື້ອງຂວາ. ໃນສັ້ນ, ຜົນໄດ້ຮັບຂອງ SQL Left Join ສະເຫມີປະກອບດ້ວຍແຖວຈາກຕາຕະລາງເບື້ອງຊ້າຍ.

ຄວາມແຕກຕ່າງລະຫວ່າງ Join ແລະ Left Join

ສຳລັບພື້ນຖານ, Join ຍັງເອີ້ນວ່າ Inner Join, ໃນຂະນະທີ່ Left Join ເປັນການ Join ພາຍນອກ.

ແຕ່ຄວາມແຕກຕ່າງທີ່ ສຳ ຄັນແມ່ນ ຄຳ ຖະແຫຼງການເຂົ້າຮ່ວມຊ້າຍມີແນວໂນ້ມທີ່ຈະລວມແລະລວມແຖວທັງ ໝົດ ຂອງຕາຕະລາງທີ່ອ້າງອີງຢູ່ເບື້ອງຊ້າຍຂອງຂໍ້ມູນ. ແທນທີ່ຈະເປັນແຖວທີ່ບໍ່ກົງກັນ, ມັນປະກອບດ້ວຍແຖວທັງໝົດຈາກຕາຕະລາງຊ້າຍ ແລະແຖວທີ່ກົງກັນຈາກຕາຕະລາງອື່ນ.

ເມື່ອໃດທີ່ຈະໃຊ້ Left Outer Join ໃນ SQL?

ສົມມຸດວ່າເຈົ້າກຳລັງຊອກຫາວິທີລວມຕາຕະລາງຕ່າງໆ. ຫຼື, ຖ້າທ່ານກໍາລັງເຂົ້າຮ່ວມສອງຕາຕະລາງແລະຕ້ອງການຜົນໄດ້ຮັບທີ່ກໍານົດໄວ້ປະກອບມີພຽງແຕ່ແຖວດຽວຂອງຕາຕະລາງທີ່ບໍ່ກົງກັນ, ທ່ານຄວນໃຊ້ປະໂຫຍກເຂົ້າຮ່ວມທາງນອກຊ້າຍຫຼືຂໍ້ຄວາມເຂົ້າຮ່ວມພາຍນອກທີ່ເຫມາະສົມ. ການໃຊ້ Left Outer Join ປະກອບດ້ວຍແຖວທີ່ບໍ່ກົງກັນຈາກຕາຕະລາງທີ່ລະບຸໄວ້ກ່ອນການ Join clause ດ້ານນອກຊ້າຍ.

ທາງເທັກນິກ, Join outer ຊ້າຍຈະລະບຸແຖວທັງໝົດຈາກທັງສອງຕາຕະລາງທີ່ກົງກັບເງື່ອນໄຂການ join ແລະ ແຖວທີ່ບໍ່ກົງກັນຈາກຕາຕະລາງ.

Left Outer Join ເພີ່ມຈຳນວນແຖວບໍ?

ນີ້ແມ່ນຄຳຖາມທີ່ມັກຖາມເລື້ອຍໆ. ທາງດ້ານເທກນິກ, ມັນແມ່ນແລ້ວ.

ຢ່າງໃດກໍຕາມ, Left Join ສາມາດ ເພີ່ມຈຳນວນແຖວໃນຕາຕະລາງຊ້າຍເທົ່ານັ້ນ. ແລະນີ້ແມ່ນພຽງແຕ່ໃນເວລາທີ່ການຈັບຄູ່ຫຼາຍຢູ່ໃນຕາຕະລາງທີ່ຖືກຕ້ອງ. ນອກຈາກນັ້ນ, ທ່ານສາມາດນໍາໃຊ້ Left Joins ຈໍານວນຫລາຍໃນການສອບຖາມຫນຶ່ງຖ້າມັນຈໍາເປັນສໍາລັບການວິເຄາະຂອງທ່ານ.

Left Outer Join ທຽບກັບ Right Outer Join

ຄວາມແຕກຕ່າງທີ່ສໍາຄັນລະຫວ່າງ Left Outer Join ແລະ Right Outer Join ແມ່ນ ການລວມແຖວທີ່ບໍ່ກົງກັນ.

ດັ່ງນັ້ນຄວາມແຕກຕ່າງລະຫວ່າງສອງອັນແມ່ນວ່າ Join ດ້ານນອກຂອງຊ້າຍປະກອບມີແຖວທີ່ບໍ່ກົງກັນຫຼືບັນທຶກທັງຫມົດຂອງຕາຕະລາງຢູ່ເບື້ອງຊ້າຍຂອງ Join clause, ລວມທັງແຖວທີ່ກົງກັນຈາກຕາຕະລາງຂວາຫຼືຂໍ້.

ໃນທາງກົງກັນຂ້າມ, ການເຂົ້າຮ່ວມທາງນອກດ້ານຂວາປະກອບມີແຖວທີ່ບໍ່ກົງກັນຈາກຕາຕະລາງຢູ່ເບື້ອງຂວາຂອງ Join clause ແລະສົ່ງຄືນແຖວທັງໝົດຈາກເບື້ອງຂວາ.

A Join clause ລວມບັນທຶກ ຫຼືດັດແກ້ ແລະຈັດການແບບຟອມຈາກສອງຕາຕະລາງ ຫຼືຫຼາຍກວ່ານັ້ນໂດຍໃຊ້ເງື່ອນໄຂເຂົ້າຮ່ວມ. ເງື່ອນໄຂການເຂົ້າຮ່ວມນີ້ຊີ້ບອກວ່າຖັນຈາກຕາຕະລາງຕ່າງໆຖືກຈັບຄູ່ກັນແນວໃດເມື່ອປຽບທຽບ.

ຕົວຢ່າງ, ຈະມີຖັນມາດຕະຖານລະຫວ່າງຕາຕະລາງທີ່ມີເງິນເດືອນຂອງພະນັກງານ ແລະຕາຕະລາງອື່ນທີ່ມີລາຍລະອຽດພະນັກງານ. ນີ້ອາດຈະເປັນບັດປະຈໍາຕົວຂອງພະນັກງານ, ແລະນີ້ຈະຊ່ວຍໃຫ້ເຂົ້າຮ່ວມທັງສອງຕາຕະລາງ.

ດັ່ງນັ້ນທ່ານສາມາດຄິດວ່າຕາຕະລາງເປັນຫນ່ວຍງານ, ແລະທີ່ສໍາຄັນແມ່ນການເຊື່ອມຕໍ່ທົ່ວໄປລະຫວ່າງສອງຕາຕະລາງ, ເຊິ່ງຖືກນໍາໃຊ້ສໍາລັບການດໍາເນີນງານຮ່ວມກັນ.

ການສຶກສາຖານຂໍ້ມູນອາດເປັນເລື່ອງທີ່ຫຍຸ້ງຍາກ. ແຕ່ມັນເປັນເລື່ອງງ່າຍໆທີ່ຈະເຂົ້າໃຈໄດ້ຫາກເຈົ້າເຂົ້າໃຈຢ່າງລະອຽດ.

ຄວາມແຕກຕ່າງລະຫວ່າງການຮ່ວມທາງຂວາ ແລະ ການເຊື່ອມໂຍງນອກດ້ານຂວາແມ່ນຫຍັງ?

ການເຊື່ອມທາງຂວາແມ່ນຄ້າຍຄືກັບການຮ່ວມຊ້າຍ, ຍົກເວັ້ນພວກມັນກັບຄືນທັງໝົດ. ແຖວໃນຕາຕະລາງຈາກດ້ານຂວາແລະທີ່ກົງກັນຈາກຊ້າຍ.

ອີກເທື່ອໜຶ່ງ, ການເຊື່ອມໂຍງດ້ານນອກດ້ານຂວາ ແລະ ການເຊື່ອມໂຍງນອກດ້ານຂວາບໍ່ມີຄວາມແຕກຕ່າງສະເພາະ, ວິທີດຽວກັນທີ່ການເຂົ້າຮ່ວມທາງຊ້າຍ ແລະ ການເຊື່ອມໂຍງນອກດ້ານຊ້າຍເຮັດບໍ່ໄດ້. ໂດຍຫຍໍ້, ຄຳວ່າ Right Join ແມ່ນພຽງແຕ່ຫຍໍ້ມາຈາກ Right Outer Join.

ຄຳສຳຄັນ "ນອກ" ເປັນທາງເລືອກ. ພວກເຂົາທັງສອງປະຕິບັດວຽກງານດຽວກັນ, ສົມທົບຊຸດຂໍ້ມູນແລະຕາຕະລາງ.

ເປັນຫຍັງຕ້ອງໃຊ້ Right Join ແທນ Left Join?

ໂດຍ​ທົ່ວ​ໄປ, ການ​ເຊື່ອມ​ຕໍ່​ນອກ​ດ້ານ​ຂວາ​ບໍ່​ໄດ້​ຖືກ​ນໍາ​ໃຊ້​ເປັນ​ປົກ​ກະ​ຕິ​ເພາະ​ວ່າ​ທ່ານ​ສາ​ມາດ​ທົດ​ແທນ​ໃຫ້​ເຂົາ​ເຈົ້າ​ສະ​ເຫມີ​ດ້ວຍ Left Outer Joins, ແລະ​ຫນຶ່ງ​ຈະ​ບໍ່​ຈໍາ​ເປັນ​ຕ້ອງ​ປະ​ຕິ​ບັດ​ຫນ້າ​ທີ່​ເພີ່ມ​ເຕີມ​.

ຄົນໜຶ່ງຈະຄິດກ່ຽວກັບການໃຊ້ Right Join ແທນ Left Join ເມື່ອໃດພະຍາຍາມເຮັດໃຫ້ SQL ຂອງທ່ານສ້າງເອກະສານດ້ວຍຕົນເອງຫຼາຍຂຶ້ນ.

ເຈົ້າອາດຈະໃຊ້ Left Join ເພື່ອແກ້ໄຂຄຳຖາມທີ່ມີແຖວ null ໃນດ້ານທີ່ຂຶ້ນກັບ. ເຈົ້າຈະໃຊ້ Right Join ສໍາລັບຄໍາຖາມທີ່ສ້າງແຖວ null ໃນດ້ານເອກະລາດ.

ການ ການ​ເຊື່ອມ​ຕໍ່​ດ້ານ​ນອກ​ດ້ານ​ຂວາ ຍັງ​ເປັນ​ປະ​ໂຫຍດ​ໃນ​ເວ​ລາ​ທີ່​ທ່ານ​ຕ້ອງ​ການ​ທີ່​ຈະ​ລວມ​ຕາ​ຕະ​ລາງ​ຫນຶ່ງ​ກັບ​ການ​ຕັດ​ກັນ​ຂອງ​ຕາ​ຕະ​ລາງ​ອື່ນໆ​ຈໍາ​ນວນ​ຫຼາຍ.

ຄວາມແຕກຕ່າງລະຫວ່າງ Join ແລະ Union ໃນ SQL

ຄວາມແຕກຕ່າງລະຫວ່າງ Join ແລະ Union ແມ່ນວ່າ Union ຖືກນໍາໃຊ້ເພື່ອລວມຊຸດຜົນໄດ້ຮັບຂອງສອງຄໍາຖະແຫຼງການ SELECT ຫຼືຫຼາຍກວ່ານັ້ນ.

ໃນຂະນະທີ່ Join ລວມຂໍ້ມູນຈາກຫຼາຍຕາຕະລາງຂຶ້ນກັບເງື່ອນໄຂທີ່ກົງກັນ, ຂໍ້ມູນທີ່ລວມກັນໂດຍໃຊ້ Join statements ຈະສົ່ງຜົນໃຫ້ຖັນໃໝ່.

ຂໍ້ມູນທີ່ຮວມກັນໂດຍໃຊ້ຄຳຖະແຫຼງການສະຫະພັນເຮັດໃຫ້ແຖວໃໝ່ທີ່ແຕກຕ່າງຈາກຊຸດທີ່ມີຈຳນວນຖັນເທົ່າກັນ.

ຄວາມຄິດສຸດທ້າຍ

ສະຫຼຸບແລ້ວ, ບໍ່ມີຄວາມແຕກຕ່າງກັນລະຫວ່າງ LEFT JOIN ແລະ LEFT OUTER JOIN . ອັນນີ້ຍັງເປັນຄວາມຈິງສໍາລັບການເຂົ້າຮ່ວມຂວາ ແລະ ສິດທິນອກເຂົ້າຮ່ວມ.

ກະແຈທັງສອງປະຕິບັດໜ້າທີ່ດຽວກັນ, ແລະ “ ນອກ” ແມ່ນພຽງແຕ່ເປັນຄີເວີດທາງເລືອກທີ່ຈະໃຊ້. ບາງຄົນແນະນຳໃຫ້ໃຊ້ມັນພຽງແຕ່ເພາະມັນຊີ້ແຈງວ່າທ່ານກຳລັງສ້າງ Outer Join.

ດັ່ງນັ້ນ, ໃນທີ່ສຸດ, ບໍ່ວ່າທ່ານຈະລະບຸມັນຫຼືບໍ່ກໍ່ບໍ່ມີຄວາມແຕກຕ່າງຫຍັງເລີຍ.

ບົດຄວາມທີ່ຫນ້າສົນໃຈອື່ນໆ:

ຄລິກທີ່ນີ້ເພື່ອຮຽນຮູ້ເພີ່ມເຕີມກ່ຽວກັບຄວາມແຕກຕ່າງເຫຼົ່ານີ້ໃນລັກສະນະສະຫຼຸບເພີ່ມເຕີມ.

Mary Davis

Mary Davis ເປັນນັກຂຽນ, ຜູ້ສ້າງເນື້ອຫາ, ແລະນັກຄົ້ນຄວ້າທີ່ມັກຄວາມຊ່ຽວຊານໃນການວິເຄາະການປຽບທຽບໃນຫົວຂໍ້ຕ່າງໆ. ດ້ວຍລະດັບປະລິນຍາຕີດ້ານວາລະສານແລະປະສົບການຫຼາຍກວ່າຫ້າປີໃນຂະແຫນງການ, Mary ມີຄວາມກະຕືລືລົ້ນໃນການສະຫນອງຂໍ້ມູນຂ່າວສານທີ່ບໍ່ລໍາອຽງແລະກົງໄປກົງມາໃຫ້ກັບຜູ້ອ່ານຂອງນາງ. ຄວາມຮັກຂອງນາງສໍາລັບການຂຽນໄດ້ເລີ່ມຕົ້ນໃນເວລາທີ່ນາງຍັງອ່ອນແລະໄດ້ເປັນແຮງຂັບເຄື່ອນທາງຫລັງຂອງການເຮັດວຽກສົບຜົນສໍາເລັດຂອງນາງໃນການຂຽນ. ຄວາມສາມາດຂອງ Mary ໃນການຄົ້ນຄວ້າແລະນໍາສະເຫນີຜົນການຄົ້ນພົບໃນຮູບແບບທີ່ເຂົ້າໃຈງ່າຍແລະມີສ່ວນຮ່ວມໄດ້ endeared ຂອງນາງກັບຜູ້ອ່ານທັງຫມົດໃນທົ່ວໂລກ. ໃນເວລາທີ່ນາງບໍ່ໄດ້ຂຽນ, Mary ມີຄວາມສຸກການເດີນທາງ, ອ່ານ, ແລະໃຊ້ເວລາກັບຄອບຄົວແລະຫມູ່ເພື່ອນ.