SORU
23 NİSAN 2010, Cuma


İkiye bir alan değeri Split

Bir tablo soyadını ve kullanıcı adını hem de içeren membername alan var. *, **3 4*2 alanları içine bu bölmek mümkün?

Tüm kayıtları bu biçimde "Adı Soyadı" (tırnak ve boşluk olmadan).

CEVAP
23 NİSAN 2010, Cuma


Ne yazık ki MySQL bölünmüş bir dize işlevi bulunmuyor. Ancak aşağıdaki makalede anlatıldığı gibi bu user defined function bir, oluşturabilirsiniz:

Bu fonksiyon, aşağıdaki gibi sorgunuzu oluşturmak mümkün olacaktır

SELECT SPLIT_STR(membername, ' ', 1) as memberfirst,
       SPLIT_STR(membername, ' ', 2) as memberlast
FROM   users;

Bir kullanıcı tanımlı işlevi kullanmamayı tercih ve biraz daha ayrıntılı olması için sorgu sakıncası yoksa, aşağıdakileri de yapabilirsiniz:

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(membername, ' ', 1), ' ', -1) as memberfirst,
       SUBSTRING_INDEX(SUBSTRING_INDEX(membername, ' ', 2), ' ', -1) as memberlast
FROM   users;

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Gimpology.com Video Tutorials

    Gimpology.co

    3 ŞUBAT 2008
  • hockeywebcasts

    hockeywebcas

    31 EKİM 2012
  • Sarah's YouTube Channel

    Sarah's YouT

    27 Temmuz 2009