SORU
24 Kasım 2010, ÇARŞAMBA


Nasıl kullanılır mySQL değiştirebilir miyim() birden çok kayıt dizeleri değiştirmek için?

İçine bir editör kaçtı olmamalıydı bazı şeyler kaçmış bir sütundaki bazı kötü veri kayıtları, bir avuç olan bir veritabanı var ve oluşturulan bağlantılar kesiliyor.

Tüm kayıtları kötü karakterleri değiştirmek için bir sorgu çalıştırmak istiyorum, ama bunu nasıl anlamaya olamaz. MySQL the replace() function ama nasıl bir sorgu içinde kullanabilir miyim?

Örneğin, ne olur doğru sözdizimi istesem değiştirmek için dize < bir gerçek daha açılı ayraç (<) bütün kayıtları var < articleItem sütun? Tek bir sorgu (örneğin, ve tek bir hamlede tümünü seç değiştir) yapılabilir mi, ya da birden fazla sorgu yapmak zorunda mıyım? Eğer birden fazla sorgu varsa bile, nasıl replace() bunu kullanmak için birden fazla kayıt üzerinde bir alanın değerini değiştirmek?

CEVAP
24 Kasım 2010, ÇARŞAMBA


Çok genel bir düzeyde

UPDATE MyTable

SET StringColumn = REPLACE (StringColumn, 'SearchForThis', 'ReplaceWithThis')

WHERE SomeOtherColumn LIKE '%PATTERN%'

Senin durumunda bu kaçan demiştin ama kaçtı olduklarını belirtmek bilmediğine göre, 10 ** kaçtı olduklarını söyleyeyim

UPDATE MyTable

SET StringColumn = REPLACE (StringColumn, 'GREATERTHAN', '<')

WHERE articleItem LIKE '%GREATERTHAN%'

Beri sorgunuza aslında olacak çalışma içinde dize, WHERE yan, niye bu desen eşleştirme sanmıyorum geliştirmek için herhangi bir performans - aslında gitmeyi oluşturmak için daha fazla çalışması için sunucu. Bu sorguyu yapacak tümcesi üye daha iyi performans başka bir olmadıkça, sadece böyle bir güncelleme yapabilirsiniz:

UPDATE MyTable

SET StringColumn = REPLACE (StringColumn, 'GREATERTHAN', '<')

Tamamen farklı bir açıdan yaklaşıyor:

Veri kaydetmeyin () seçtiğinizde bunu yapabilirsiniz

Yani: yerine

SELECT MyURLString From MyTable

Yapabilirsin

SELECT REPLACE (MyURLString, 'GREATERTHAN', '<') as MyURLString From MyTable

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ElChakotay Andrich

    ElChakotay A

    10 EKİM 2013
  • mobilenet.cz

    mobilenet.cz

    26 NİSAN 2008
  • The Pet Collective

    The Pet Coll

    5 Ocak 2012