Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: liczenie słów zgrupowanych GROUP_CONCAT i sortowanie.
Forum PHP.pl > Forum > Bazy danych > MySQL
omxd
Witam,
jestem kiepski mysql dlatego prosze o pomoc.
Mam prostą tabelke:
id_tag name
286 drzewo
285 drzewo
286 twarz
Potrzebuję uzyskać taki wynik po zapytaniu - łącznie z sortowaniem score:
id_tag word_group score
286 twarz,drzewo 2
285 drzewo 1
próbuję:
  1. SELECT
  2. id_tag,
  3. GROUP_CONCAT(name) AS 'word_group',
  4. LENGTH('word_group') - LENGTH(REPLACE('word_group', ', ', ''))+1 AS 'score'
  5. FROM tag
  6. WHERE name='drzewo' OR name='twarz'
  7. GROUP BY id_tag

W obydwu przypadkach w score dostaję "1" i nie wiem jak posortować według score ( chyba muszę sortować przez id_tag ,inaczej się rozsypuję. )

Z góry dzięki!
mmmmmmm
  1. SELECT
  2. `id_tag`,
  3. GROUP_CONCAT(`name`) AS 'word_group',
  4. Count(`name`) AS 'score'
  5. FROM `tag`
  6. WHERE `name` IN ('drzewo' , 'twarz')
  7. GROUP BY id_tag
  8. ORDER BY 3 DESC
omxd
dzięki piękne!


proszę poratujcie mnie jeszcze raz!
  1. SELECT
  2. tag.id_tag AS 'idtag',
  3. GROUP_CONCAT(tag.name) AS 'word_group',
  4. Count(tag.name) AS 'score',item.id AS 'itemid'
  5. FROM `tag`
  6. LEFT JOIN `item`
  7. ON 'idtag'='itemid'
  8. WHERE `name` IN ('drzewo' , 'twarz')
  9. GROUP BY id_tag
  10. ORDER BY 3 DESC

mmmmmmm
` zamiast '

Ale jak się zastanowię, to jakąś głupotę chcesz zrobić. Może nie głupotę, ale sam nie wiesz co lub jak. Napisz po polsku, co chcesz osiągnąć.
omxd
Wynik zapytania które to uprzejmie mi podsunąłeś chcę połączyć z inną tabelka item - gdzie item.id ma taką samą wartość jak tag.id_tag.

z góry dziękuję i pozdrawiam
mmmmmmm
  1. SELECT
  2. `tag`.`id_tag` AS 'idtag',
  3. `item`.`id` AS 'itemid',
  4. GROUP_CONCAT(`tag`.`name`) AS 'word_group',
  5. Count(`tag`.`name`) AS 'score'
  6. FROM `tag`
  7. LEFT JOIN `item`
  8. ON `tag`.`id_tag`=`item`.`id`
  9. WHERE `tag`.`name` IN ('drzewo' , 'twarz')
  10. GROUP BY `tag`.`id_tag`, `item`.`id`
  11. ORDER BY 3 DESC
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.