Возможно, это было задано, но поскольку я являюсь массивным PHP/MySQL noob, я действительно не знаю, что я ищу. Я, выполнив следующий запрос:Подзапрос PHP/MySQL возвращает более 1 строки
SELECT shortlink_analytics.shortlink AS short,
COUNT(shortlink_analytics.shortlink) AS shortcount,
(SELECT link FROM shortlinks WHERE shortlinks.shortlink = shortlink_analytics.shortlink) AS shLink
FROM shortlink_analytics JOIN shortlinks ON shortlink_analytics.shortlink = shortlinks.shortlink
GROUP BY shortlink_analytics.shortlink
ORDER BY COUNT(shortlink_analytics.shortlink) DESC LIMIT 10
Это используется для работы, но, пересматривал на прошлой неделе я заметил, что на выходе, вместо работы, показал ошибку:
Subquery returns more than 1 row
После играя с кодом мне удалось найти, что проблема лежит (я думаю!) в области (но я не совсем уверен):
GROUP BY shortlink_analytics.shortlink
ORDER BY COUNT(shortlink_analytics.shortlink) DESC LIMIT 10
ли кто-нибудь сможет объяснить:
- , где я поступил не так?
- Возможная причина, почему он работал месяц, а затем он прекратил работать?
- Каков будет способ исправить мою проблему?
Почему бы не использовать 'ВНУТРЕННЕЙ JOIN' заменить эту часть' ВЫБРАТЬ ссылку FROM WHERE shortlinks.shortlink коротких ссылок = shortlink_analytics.shortlink'. Это делает ваш запрос более читаемым и, вероятно, лучше работает ... –