UNION-এর ফলাফলের রেকর্ড সংখ্যা জানতে নিচের সিনট্যাক্স ব্যবহার করুন:
SELECT COUNT(*) FROM ( SELECT yourColumName1 from yourTableName1 UNION SELECT yourColumName1 from yourTableName2 ) anyVariableName;
উপরের সিনট্যাক্স বুঝতে কিছু রেকর্ড সহ দুটি টেবিল তৈরি করি। প্রথম টেবিল তৈরির কোয়েরি:
mysql> create table union_Table1 -> ( -> UserId int -> ); Query OK, 0 rows affected (0.47 sec)
টেবিলে কিছু রেকর্ড যোগ করুন:
mysql> insert into union_Table1 values(1); Query OK, 1 row affected (0.18 sec) mysql> insert into union_Table1 values(10); Query OK, 1 row affected (0.12 sec) mysql> insert into union_Table1 values(20); Query OK, 1 row affected (0.09 sec)
টেবিলের সব রেকর্ড দেখান:
mysql> select *from union_Table1;
আউটপুট:
+--------+ | UserId | +--------+ | 1 | | 10 | | 20 | +--------+ 3 rows in set (0.00 sec)
দ্বিতীয় টেবিল তৈরির কোয়েরি:
mysql> create table union_Table2 -> ( -> UserId int -> ); Query OK, 0 rows affected (0.69 sec)
দ্বিতীয় টেবিলে রেকর্ড যোগ করুন:
mysql> insert into union_Table2 values(1); Query OK, 1 row affected (0.12 sec) mysql> insert into union_Table2 values(30); Query OK, 1 row affected (0.26 sec) mysql> insert into union_Table2 values(50); Query OK, 1 row affected (0.13 sec)
দ্বিতীয় টেবিলের রেকর্ড দেখান:
mysql> select *from union_Table2;
আউটপুট:
+--------+ | UserId | +--------+ | 1 | | 30 | | 50 | +--------+ 3 rows in set (0.00 sec)
দুই টেবিলে যেকোনো রেকর্ড একই হলে UNION সেটাকে একবারই গণনা করে। UNION কোয়েরিতে কাউন্ট করার কোয়েরি:
mysql> select count(*) as UnionCount from -> ( -> select distinct UserId from union_Table1 -> union -> select distinct UserId from union_Table2 -> )tbl1;
ফলাফল:
+------------+ | UnionCount | +------------+ | 5 | +------------+ 1 row in set (0.00 sec)