|
|
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Прощу помочь в формировании простого запроса, который отобразит последние 10 комментариев, при этом покажет кто именно оставил комментарий, покажет сам текст комментария и количество сколько всего оставил комментариев тот или иной пользователь. Т.е. есть таблица Код: sql 1. 2. 3. 4. 5. 6. 7. 8. Должно вывести: Паша - 3 коммента - Текст6 Паша - 3 коммента - Текст5 Никита - 1 коммента - Текст4 Сергей - 1 коммента - текст3 Вася - 1 коммент - текст2 Паша - 3 коммента - текст1 ...... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2015, 18:51:10 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Gamletusпоследние 10 комментариев Последние по какому критерию? А вообще Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2015, 19:00:27 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Пардон, LIMIT 10 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2015, 19:00:52 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Akina, ну последние по айдишнику. Тут мне важно запрос на отображение и подсчёт, чтобы всё в одном запросе, а то я как дурак через цикл в пхп делаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2015, 19:02:41 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Ты хочешь в одном запросе получить данные разных уровней группировки. Без подзапроса (на получение количества комментов) не получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2015, 19:08:57 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Akina, пусть с подзапросами, но это явно лучше, чем сейчас у меня ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2015, 19:23:58 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Gamletusэто явно лучше, чем сейчас у меня Сейчас у тебя, если верить тому, что ты тут пишешь - вообще ничего. Покажи хотя бы DDL таблицы. Ещё лучше - плюс тестовое наполнение. Совсем хорошо - если в форме работающих SQL-скриптов. Ну и, конечно, желаемый на этом наполнении результат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2015, 20:53:20 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Akina, не думал, что мой вопрос будет настолько сложным, что у тебя возникнет ещё куча вопросов. Создаём таблицу: Код: sql 1. 2. 3. 4. 5. 6. Создаём комментарии: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Результат как в первом сообщении... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2015, 23:34:54 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Gamletusи количество сколько всего оставил комментариев тот или иной пользователь.количество из этих десяти или из всей таблицы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2015, 07:27:01 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2015, 09:25:01 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответы, не думайте что я забил на тему. Просто пытался сам чуток разобраться. Что-то не выходит. При большом количестве записей просто виснет. Решил немного точнее вопрос сформулировать и добавить столбец. Запрос на создание таблицы: Код: sql 1. 2. 3. 4. 5. 6. 7. Запрос на добавление строк: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. Важно замечание!! Строк примерно 13.000 штук и будет больше. Суть заключается в том, что каждый пользователь оставляет отзыв про менеджера и требуется вывести самые свежие 10 комментаторов для менеджера "М1" Но для каждой записи необходимо сделать отображение сколько всего отзывов оставил тот или иной комментатор, не конкретно про данного менеджера, а вообще сколько всего. Т.е. по идее результат должен быть таким: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Вроде ничего не забыл. Прошу помочь составить запрос, который смог бы это отобразить и желательно, чтобы запрос работал с большим количеством записей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2015, 23:23:36 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Gamletusтребуется вывести самые свежие 10 комментаторов для менеджера "М1" В структуре отсутствует поле, которое устанавливает порядок очерёдности записей (вероятно, это должен быть штамп времени комментария). ID на эту роль подходит формально, но не идеологически. Впрочем, если всё-таки предположить, что именно это поле определяет порядок - шаблон я уже дал. Правда, тут ты упрёшься в о, что в подзапросе нельзя использовать LIMIT. Но если подзапрос с LIMIT оформить как вьюв - то всё получится как нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2015, 13:15:16 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
автор10. Максим (1)А здесь точно нет ошибки? По вашему описанию задачи, должно быть 2. Попробуйте такой запрос: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Если результат устроит, то хорошо бы добавить пару индексов, для того что бы и время выполнения устроило. Код: sql 1. и Код: sql 1. P.S.Ну и план запроса после создания индексов покажите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2015, 05:11:05 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Guest , спасибо. авторА здесь точно нет ошибки? По вашему описанию задачи, должно быть 2. Совершенно верно подметили. Это я уже сам ошибся, должно быть действительно 2. авторПопробуйте такой запрос:Сейчас попробую, обязательно отпишусь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2015, 10:48:00 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Выдало ошибку авторUnknown column 't1.user' in 'where clause' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2015, 11:00:40 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
И на это тоже по началу ругалась: авторUnknown column 'v.name' in 'field list' Но я так понимаю там вместо name должно быть user, я исправил. Но выдало другую ошибку выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2015, 11:02:51 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Gamletusзапроса, который отобразит последние 10 комментариев, при этом покажет кто именно оставил комментарий, покажет сам текст комментария и количество сколько всего оставил комментариев тот или иной пользователь. GamletusСоздаём таблицу: GamletusСоздаём комментарии: А далее Код: sql 1. 2. 3. 4. 5. 6. И соответственно Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2015, 12:05:10 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Akina , попробовал ваш запрос, но что-то не сработало. В общем господа, мой давний и верный друг очень сильно помог с данной ситуацией. Вот пример рабочего запроса, который быстро отображает именно то, что необходимо: Код: sql 1. 2. 3. Вдруг кому-то пригодится. Все, кто старался помочь огромнейшее спасибо )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2015, 19:41:43 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Gamletusпопробовал ваш запрос, но что-то не сработало. Потому что Вы меняете задачу. То ли она за эти 2 недели поменялась, то ли Вы поняли, что сначала ошиблись с формулировкой... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2015, 20:28:59 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
GamletusВыдало ошибку авторUnknown column 't1.user' in 'where clause' Это потому, что я с ошибкой написал. Должно быть так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. MySQL-я под рукой нет, поэтому прошу извинить за ошибки... P.S. Покажите планы для данного запроса и для своего финального варианта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 02:31:03 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
Gamletus Akina , попробовал ваш запрос, но что-то не сработало. В общем господа, мой давний и верный друг очень сильно помог с данной ситуацией. Вот пример рабочего запроса, который быстро отображает именно то, что необходимо: Код: sql 1. 2. 3. Вдруг кому-то пригодится. Все, кто старался помочь огромнейшее спасибо )) Gamletus, я не хочу ваc обидеть, но в вашем супе чего-то не хватает. Вы сами то этот запрос пробовали? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. А куда собственно делся Паша с его 5 комментариями? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 17:47:33 |
|
||
|
Простой запрос на выборку и подсчёт
|
|||
|---|---|---|---|
|
#18+
AkinaПотому что Вы меняете задачу. То ли она за эти 2 недели поменялась, то ли Вы поняли, что сначала ошиблись с формулировкой...Я потом показал свой вопрос более полным. Потому как действительно решил, что в первом сообщении как-то скудно всё показал. *MySQL-я под рукой нет, поэтому прошу извинить за ошибки... P.S. Покажите планы для данного запроса и для своего финального варианта.Я к сожалению не имею возможности показать планы выполнения, т.к. не являюсь специалистом и специального софта не имею. Ваш запрос обязательно попробую. alexnewsGamletus, я не хочу ваc обидеть, но в вашем супе чего-то не хватает. Вы сами то этот запрос пробовали?Да, конечно. Всё отлично работает ))) alexnewsА куда собственно делся Паша с его 5 комментариями?А Паши по условиям быть не должно, т.к. отображать необходимо было только последние 10 комментариев. А Паша как бы в их число не входит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 21:07:39 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39099987&tid=1832458]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
62ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 256ms |
| total: | 403ms |

| 0 / 0 |
