Birden sorgular dan GROUP_CONCAT?

0 Cevap php

Ben bana yaşam için bu anlamaya gibi olamaz: x

İki tablo var ..

  • 1 = Tag Linkler
  • 2 = Tag Veri

When I query for a profile, each profile can have multiple entries in the tag links table. Once I retrieve the tag links, I want to get the tag text from the tag data table.

I can do this with: SELECT * FROM platform.tagWords WHERE tagId IN (SELECT tagId FROM platform.user sProfilesTags WHERE userId = 1001)

Ama (50.000 civarında) her etiketi geçer ve her sorgu 5-8 saniye sürer gibi bu tam bir çözüm değildir bu yüzden kullanıcıya atanmış ise o kontrol eder.

Bu tersine çevirmek için bir yolu var mı?

Herhangi bir ipucu veya tavsiye çok takdir edilecektir.

Şimdiden teşekkürler!

* Güncelleme

Yani bu bir birleşim ile bir bıçak vermeye çalışıyorum, ama ben orada çok şaşırıp: P

SELECT                                                                          

  GROUP_CONCAT(tagWords.tagWord SEPARATOR ', ') AS tags,                        
  usersProfiles.*                                                                

FROM platform.users u                                                          

INNER JOIN platform.usersProfilesTags ON usersProfilesTags.userId = u.userId   
INNER JOIN platform.usersProfiles ON usersProfiles.userId = u.userId           
INNER JOIN platform.tagWords ON tagWords.tagId = usersProfilesTags.tagId       

WHERE u.userName = 'mattstest'

0 Cevap