Reputation: 3442
my question similar like this one MySQL COUNT() multiple columns.
but for me , how do i count the mutliple row:
report table:
id t_pro t_price
1. voucher 20.00
2. pro 13.00
3. pro 1x 13.00
4. pro 2x 13.00
5. voucher 20.00
6. pro 1x 13.00
$db->query("SELECT COUNT(*) FROM (SELECT t_pro WHERE t_pro LIKE 'pro%' AS pro_tan, SELECT t_pro WHERE t_pro LIKE 'voucher%' AS voucher) WHERE date=CURDATE() ");
the result something like:
voucher : 2
pro tan : 4
Upvotes: 1
Views: 535
Reputation: 72991
You can use GROUP BY
:
SELECT t_pro, COUNT(*) FROM report GROUP BY t_pro;
NOTE: this is if you want the count for each t_pro
value. Otherwise, you'd need to modify the GROUP BY
for custom t_pro
value associations
Upvotes: 2
Reputation: 425371
SELECT CASE WHEN t_pro LIKE 'voucher%' THEN 'voucher' WHEN t_pro LIKE 'pro%' THEN 'pro tan' END AS pro,
COUNT(*)
FROM mytable
WHERE t_pro LIKE 't_pro%' OR t_pro LIKE 'voucher%'
GROUP BY
pro
Upvotes: 3