Я знаю, что это возможно, но я недостаточно опыт, чтобы знать, как делать подзапросы.
Вот ситуация:Как получить количество конкретных строк из другой таблицы в подзапросе
Table 1:
+--------------------+--------------------+
| v_id | v_name |
+--------------------+--------------------+
| 1 | v_name1 |
+--------------------+--------------------+
| etc...
Table 2:
+--------------------+--------------------+
| a_id | a_name |
+--------------------+--------------------+
| 1 | a_name1 |
+--------------------+--------------------+
| etc...
Table 3:
+--------------------+--------------------+
| v_id | a_id |
+--------------------+--------------------+
| 1 | 1 |
+--------------------+--------------------+
| 1 | 2 |
+--------------------+--------------------+
| 1 | 3 |
+--------------------+--------------------+
| 2 | 3 |
+--------------------+--------------------+
| 2 | 1 |
+--------------------+--------------------+
Я считаю, что это довольно распространенная ситуация.
Итак, у меня есть уникальные записи в Table 1
и Table 2
.
Я хочу, чтобы SELECT
все строки от Table 1
и получили (как последнюю ячейку в каждой строке) количество строк с соответствующим значением в Table 3
.
Это не работает:
SELECT t1.* , COUNT(SELECT t3.* FROM `table_3` t3 WHERE t3.v_id = t1.v_id) as entries
FROM `table 1` t1;
Я уверен, что я собираюсь быть отчитан экспертами здесь, что все это неправильно, но, честно говоря, это то, что я ищу (и некоторые полезные решение!). ;)
+1 Ты меня избил. –
большое спасибо! :) –