ລາຍການຫົວເລື່ອງ
ການໃຊ້ syntax/statement query ຂອງຖານຂໍ້ມູນ MySQL UNION ORDER BY
MySQL ຜູ້ປະກອບການຂອງສະຫະພັນ
ບົດສອນນີ້ແນະນຳໃຫ້ທ່ານຮູ້ syntax ແລະຕົວຢ່າງຂອງຕົວປະຕິບັດການ MySQL UNION.
ຄຳ ອະທິບາຍ
ຕົວປະຕິບັດການ MySQL UNION ຖືກນໍາໃຊ້ເພື່ອສົມທົບຜົນໄດ້ຮັບຂອງສອງຫຼືຫຼາຍກວ່າຄໍາຖະແຫຼງການ SELECT ເຂົ້າໄປໃນຊຸດຜົນໄດ້ຮັບດຽວ.ຄໍາສັ່ງ SELECT ຫຼາຍເອົາຂໍ້ມູນທີ່ຊ້ໍາກັນ.
ໄວຍາກອນ
ຮູບແບບໄວຍະກອນຂອງ MySQL UNION:
SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions] UNION [ALL | DISTINCT] SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions];
ພາລາມິເຕີ
- expression1, expression2, ... expression_n: ຖັນເພື່ອດຶງຂໍ້ມູນ.
- ຕາຕະລາງ: ຕາຕະລາງຂໍ້ມູນເພື່ອດຶງຂໍ້ມູນ.
- ເງື່ອນໄຂຢູ່ໃສ: ທາງເລືອກ, ເງື່ອນໄຂການຊອກຫາ.
- ຄວາມແຕກຕ່າງ: ທາງເລືອກອື່ນ, ເອົາຂໍ້ມູນທີ່ຊ້ໍາກັນອອກຈາກຊຸດຜົນໄດ້ຮັບ.ຜູ້ປະກອບການຂອງ UNION ມີຂໍ້ມູນຊໍ້າກັນໂດຍຄ່າເລີ່ມຕົ້ນ, ດັ່ງນັ້ນຕົວແກ້ໄຂ DISTINCT ບໍ່ມີຜົນຕໍ່ກັບຜົນໄດ້ຮັບ.
- ທັງົດ: ທາງເລືອກ, ສົ່ງຄືນຊຸດຜົນໄດ້ຮັບທັງໝົດ, ລວມທັງການຊໍ້າກັນ.
ຖານຂໍ້ມູນຕົວຢ່າງ
ໃນບົດສອນນີ້, ພວກເຮົາຈະໃຊ້ຖານຂໍ້ມູນຕົວຢ່າງຂອງ chenweiliang.
ນີ້ແມ່ນຂໍ້ມູນຈາກຕາຕະລາງ "ເວັບໄຊທ໌":
mysql> SELECT * FROM Websites; +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | Google | https://www.google.cm/ | 1 | USA | | 2 | 淘宝 | https://www.taobao.com/ | 13 | CN | | 3 | 陈沩亮博客 | http://www.chenweiliang.com/ | 4689 | CN | | 4 | 微博 | http://weibo.com/ | 20 | CN | | 5 | Facebook | https://www.facebook.com/ | 3 | USA | | 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND | +----+---------------+---------------------------+-------+---------+
ນີ້ແມ່ນຂໍ້ມູນສໍາລັບ "ແອັບຯ" APP:
mysql> SELECT * FROM apps; +----+------------+-------------------------+---------+ | id | app_name | url | country | +----+------------+-------------------------+---------+ | 1 | QQ APP | http://im.qq.com/ | CN | | 2 | 微博 APP | http://weibo.com/ | CN | | 3 | 淘宝 APP | https://www.taobao.com/ | CN | +----+------------+-------------------------+---------+ 3 rows in set (0.00 sec)
ຕົວຢ່າງ SQL UNION
ຄຳສັ່ງ SQL ຕໍ່ໄປນີ້ເລືອກປະເທດ ທີ່ແຕກຕ່າງກັນ ທັງໝົດ (ພຽງແຕ່ຄ່າທີ່ແຕກຕ່າງກັນ) ຈາກຕາຕະລາງ "ເວັບໄຊທ໌" ແລະ "ແອັບ" :
ຕົວຢ່າງ
SELECT country FROM Websites UNION SELECT country FROM apps ORDER BY country;
ຕົວຢ່າງ SQL UNION ທັງໝົດ
ຄຳສັ່ງ SQL ຕໍ່ໄປນີ້ໃຊ້ UNION ALL ເພື່ອເລືອກ ທຸກ ປະເທດ (ລວມທັງຄ່າທີ່ຊໍ້າກັນ) ຈາກຕາຕະລາງ "ເວັບໄຊທ໌" ແລະ "ແອັບ" :
ຕົວຢ່າງ
SELECT country FROM Websites UNION ALL SELECT country FROM apps ORDER BY country;
SQL UNION ALL ກັບບ່ອນໃດ
ຄຳສັ່ງ SQL ຕໍ່ໄປນີ້ໃຊ້ UNION ALL ເພື່ອເລືອກ ຂໍ້ມູນ ທັງໝົດ ສຳລັບປະເທດຈີນ (CN) ຈາກຕາຕະລາງ "ເວັບໄຊທ໌" ແລະ "ແອັບ" (ລວມທັງຄ່າທີ່ຊ້ຳກັນ):
ຕົວຢ່າງ
SELECT country, name FROM Websites WHERE country='CN' UNION ALL SELECT country, app_name FROM apps WHERE country='CN' ORDER BY country;
ຫວັງວ່າບົດຄວາມ "Union Order By Query Syntax/Statement Usage in MySQL Database" ທີ່ແບ່ງປັນໃນ ບລັອກຂອງ Chen Weiliang ( https://www.chenweiliang.com/ ) ຈະເປັນປະໂຫຍດຕໍ່ທ່ານ.
ຮູ້ສຶກວ່າບໍ່ເສຍຄ່າທີ່ຈະແບ່ງປັນລິ້ງຂອງບົດຄວາມນີ້: https://www.chenweiliang.com/cwl-475.html
