SELECT tablea.z, count(tablea.z), count(tableb.y)
FROM tablea
JOIN tableb
ON tablea.y = tableb.y
GROUP BY tablea.z;
Я пытаюсь в конечном итоге получить count(tableb.y)/count(tablea.z)
.SQL Присоединиться к двум таблицам
Каждый из них отлично работает, когда я нахожу их индивидуально, но когда я присоединяюсь к столам, как показано выше, count(tablea.z)
превращается в count(tableb.y)
.
Любые советы?
Это потому, что список SELECT уже выполнил соединение и возвратил объединенный набор ... таким образом, оба счета возвращают число строк, полученных в результате соединения. Есть несколько способов обойти это ... знание того, с каким SQL-движком вы работаете. – jleach
Можете ли вы показать нам пример ввода и вывода проб? –
@ jdl134679 MySQL 5.6 – nquestion