SORU
10 Kasım 2008, PAZARTESİ


Bir alana birden çok MySQL satırları Birleştir miyim?

MySQL gibi bir şey yapabilirim kullanarak:

SELECT hobbies FROM peoples_hobbies WHERE person_id = 5;

ve almak:

shopping
fishing
coding

ama ben sadece, 1 1 satır col istiyor yerine

shopping, fishing, coding

Sebebi birden çok tablo birden çok değer seçmek olduğumu ve tüm katıldıktan sonra istediğimden çok daha fazla satır var.

MySQL Doc CONCAT gibi görünmüyor veya* *10 fonksiyonlar bir fonksiyon için kabul sonuç kümeleri baktım, çok kimse, bunun nasıl yapılacağını bilen var mı?

CEVAP
10 Kasım 2008, PAZARTESİ


GROUP_CONCAT kullanabilirsiniz.

Gibi:

SELECT person_id, GROUP_CONCAT(hobbies SEPARATOR ', ')
FROM peoples_hobbies GROUP BY person_id

Death: Dag yaptığı yorumda belirtildiği gibi, sonucu 1024 bayt sınırı vardır. Bunu çözmek için, önce sorgu: bu sorguyu çalıştırın

SET group_concat_max_len = 2048

Tabii ki, sizin ihtiyaçlarınıza göre 2048 değiştirebilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AmeriiK_HD

    AmeriiK_HD

    16 AĞUSTOS 2012
  • Leigh Momii

    Leigh Momii

    10 Mayıs 2006
  • Tahir Jahi

    Tahir Jahi

    6 Mart 2006