У меня в настоящее время есть таблица, которая выглядит примерно так:
+----+----------+--+------------+
| id | entry_id | | value |
+----+----------+--+------------+
| 1 | 20 | | name |
| 2 | 20 | | email |
| 3 | 20 | | Menu 1 |
| 4 | 20 | | 2020-04-23 |
| 5 | 21 | | name |
| 6 | 21 | | email |
| 7 | 21 | | Menu 1 |
| 8 | 21 | | 2020-04-23 |
+----+----------+--+------------+
Теперь я хотел бы посчитать меню на определенную дату, что означает, что я хотел бы показать «2» для меню 1 в 2020-04-23:
+-------+
| count |
+-------+
| 2 |
+-------+
Мой текущий SQL выглядит следующим образом:
SELECT COUNT(entry_id) FROM my_table WHERE value IN ("Menu 1", "2020-04-23") GROUP BY entry_id HAVING COUNT(*) = 2
Однако, похоже, это не работает для меня. Есть ли способ подсчитать запись один раз, если выполнены два условия?
Спасибо за помощь!