0

I'm using this code:

SELECT *
  FROM admins, vips
  WHERE admins.Expired < CURDATE() + INTERVAL 3 DAY
    AND vips.Expired < CURDATE() + INTERVAL 3 DAY

I have 2 rows in first and 2 rows in second. But I only getting 2 rows in "vips" table. Why?

outis
  • 75,655
  • 22
  • 151
  • 221
iamart
  • 311
  • 3
  • 15

1 Answers1

0

Try specifying the * for both tables, like this:

SELECT admins.*, vips.*
FROM admins, vips
WHERE admins.Expired < CURDATE() + INTERVAL 3 DAY
AND vips.Expired < CURDATE() + INTERVAL 3 DAY

EDIT: The answer above isn't going to help, you need a UNION SELECT:

SELECT * 
FROM (SELECT * FROM vips
    UNION
    SELECT * FROM admins) derivedTable       -- this is an alias of the subquery
WHERE Expired < CURDATE() + INTERVAL 3 DAY
John Woo
  • 258,903
  • 69
  • 498
  • 492
Robin Kanters
  • 5,018
  • 2
  • 20
  • 36