Sử dụng UNION và UNION ALL

  • UNION sẽ loại bỏ giá trị lặp
  • UNION ALL sẽ thêm tất cả các bản ghi bao gồm giá trị lặp
VB:
string sql1 =
" SELECT po_ID, gps_NUMBER, po_QUANTITY, po_PRICE, po_CURRENCY_CODE FROM tb_PoDetail " +
" WHERE " +
" gps_NUMBER IS NOT NULL " +
"";
string sql2 =
" SELECT tb_PoDetail.po_ID, tb_MRP.gps_NUMBER, po_QUANTITY, po_PRICE, po_CURRENCY_CODE FROM tb_PoDetail " +
" INNER JOIN tb_MRP ON tb_PoDetail.mrp_ID=tb_MRP.mrp_ID" +
" WHERE " +
" tb_PoDetail.gps_NUMBER IS NULL " +
" AND tb_PoDetail.mrp_ID IS NOT NULL " +
"";

comm = new OleDbCommand(
" SELECT * FROM (" +
sql1 +
" UNION " +
sql2 +
") ", conn);

Copy »

Lỗi xảy ra khi sử dụng khai báo:
string sql1 =
" (SELECT po_ID, gps_NUMBER, po_QUANTITY, po_PRICE, po_CURRENCY_CODE FROM tb_PoDetail " +
" WHERE " +
" gps_NUMBER IS NOT NULL " +
" )AS tb1";


Keywords: Sử dụng UNION và UNION ALL

TOP