0

I have 2 tables, users and users_advance. Tables looks like:

users:

| id | firstName | lastName |
| -- | --------- | -------- |
| 1  | John 1    | Test 1   |
| 2  | John 2    | Test 2   |
| 3  | John 3    | Test 3   |

users_advance:

| id | user_id | amount |   d_add    | status_id |
| -- | ------- | ------ | ---------- | --------- |
|  1 |       1 |    100 | 2022-07-09 |         1 |
|  2 |       1 |     50 | 2022-07-10 |         2 |
|  3 |       2 |    100 | 2022-07-03 |         1 |
|  4 |       2 |     50 | 2022-07-05 |         2 |
|  5 |       2 |    100 | 2022-03-09 |         1 |
|  6 |       1 |     50 | 2022-07-02 |         2 |

I've created sql SELECT u.id, u.firstName, u.lastName, IFNULL(SUM(uz.amount), 0) FROM users u LEFT JOIN users_advance uz ON uz.user_id = u.id WHERE (uz.d_add BETWEEN '2022-07-19' AND '2022-07-25') AND ((uz.status_id = 1) OR (uz.status_id = 2)) GROUP BY u.id but it only returns me a users who have record in users_advance but I'd like to have as results all users with sum of amount even if thats null. If I will remove WHERE condition it returns all users. Could you help me?

Jaroslaw Nowak
  • 105
  • 1
  • 10

0 Answers0