Використання; COUNT () у cygenc join - OpenClassrooms
Питання ? Не хвилюйтеся, ми допоможемо вам !

У мене є запит, який дозволяє мені отримувати інформацію, і я хотів би отримувати номер рядка одночасно.
Я добре розумію кількість COUNT. Проблема в тому, що я отримую інформацію лише з одного рядка.
Дякую за твою допомогу.
cygenc писав:
отримати інформацію і отримати кількість рядків одночасно
Ні . неможливо в SQL мати агреговані дані і детально. це також важко осмислити, ви хотіли б, щоб значення COUNT у кожному рядку було повернуто? Якщо так, вам доведеться пройти підзапит .
В іншому випадку найпростіший спосіб - зробити два запити. Один лише з COUNT (*), а інший - з деталями .
Якщо ваш SQL-запит викликається сайтом, ви можете кодувати кількість безпосередньо в PHP. Однак це пройде, як Бензуе сказав у 2 запитах.
У PHP, якщо ви використовуєте PDO, ви можете використовувати кількість рядків відповідно до наступного прикладу:
Мартін Б писав:
У PHP, якщо ви використовуєте PDO, ви можете використовувати підрахунок рядків
Так, але з пропозицією LIMIT результат підрахунку рядків буде спотворений .
Дякую за відповіді.
Використання двох запитів значно уповільнює завантаження моєї сторінки, і якщо не так, як Бензуе сказав, мій результат перекошений, оскільки я використовую речення LIMIT, якщо проходжу підрахунок у php.
Щоб відповісти на перше повідомлення Бензує, насправді мій запит дозволяє мені отримати інформацію, скажімо фрукти, відповідно до пункту where.
Я хотів би, якщо це можливо, також відновити кількість фруктів. Не знаю, чи досить ясний.
За допомогою мого коду я добре отримую це число, але замість того, щоб отримати всі плоди, воно отримує лише один.
cygenc писав:
За допомогою мого коду я добре отримую це число, але замість того, щоб отримати всі плоди, воно отримує лише один.
Це нормальна робота. у будь-якому випадку з MySQL .
Сукупні функції (COUNT, MAX, MIN, AVG тощо) призначені для групування записів для відображення зведених результатів. MySQL досить толерантний, він не нав'язує з цими функціями речення GROUP BY, але все одно групується і відображає дані "навмання", загалом перший знайдений запис .
Використовуючи речення LIMIT, я не бачу іншого рішення, як зробити 2 запити .
cygenc писав:
Використання двох запитів значно уповільнює завантаження моєї сторінки
Я в цьому не переконаний. спробуйте цей код, розглядаючи $ bdd як ваш PDO-об'єкт підключення MySQL: