MYSQL belli bir ifadeden sonrasını silmek istiyorum

0

Merhaba, bir MYSQL koduna ihtiyacım var.

Mysql'de (Opencart uygulaması üzerinde)  oc_url_alias tablosu içerisinde keyword sütunundaki içeriklerin ^ işareti ile başlayan her şeyi silmek istiyorum.  

^ işareti dahil olmak üzere, bu ifadeyle başlayan satırların tamamını temizlemem gerekiyor. Phpmyadmin üzerinden sorgu kodu arıyorum. 

Bu konuda yardımcı olabilir misiniz?

Yaklaşık 12 bin satırlık hata var, hepsini bu şekilde düzeltmeye çalışacağım. MYSQL'de henüz yeniyim.

Teşekkürler.

delphpin delphpin (1)
1 yıl önce sordu

Toplam 2 Cevap


0

SQL sorgusu yazarken joker karakter kullanabilirsiniz.

DELETE FROM oc_url_alias
WHERE  (keyword LIKE '^%')

Bu ifade oc_url_alias tablosu içerisinde keyword sütunundaki içeriklerin ^ ile başlayan tüm verileri siler.

Düzenleme:

MS SQL için şu şekilde bir sorgu iş görür (MY Sql ile pek işim yok). Kafanda bir şeyler oluşması için yazdım.

UPDATE oc_url_alias
SET          Keyword = SUBSTRING(Keyword, 1, CHARINDEX('^', Keyword) -1)
WHERE (Keyword LIKE '%^/%')

MY SQL'de ise şu şekilde bir sorgu çalışır diye düşünüyorum (denemedim)

UPDATE oc_url_alias 
    SET Keyword = SUBSTRING_INDEX(Keyword, '^/', 1)
    WHERE Keyword LIKE '%^/%';

 

alattin alattin (10851)
1 yıl önce cevaplandı

0

Merhaba,

Sorguyu çalıştırdım fakat işlem sonucunu vermedi. Hata da oluşturmadı.

Şöyle örnek vereyim size belki ben durumu yanlış anlatmış olabilirim hocam.

 

efekt-pedal-processor-akustik-nux-pa-2-urun78442.html^/page.php?act=urunDetay&urunID=78442&name=efekt-pedal-processor-akustik-nux-pa-2

Yukarıdaki satırda html den sonra ^/ şeklinde başlayan bir satır var. sonrası da beraberinde geliyor. Bu şekilde birbirinden farklı 12 bin kadar satır var. Değiştirilecek satırların bu şekilde olduğunu düşünürsek alternatif bir şey yapabilir miyiz?

Teşekkürler.

delphpin delphpin (1)
1 yıl önce cevaplandı

  • veritabanında verile ne şekilde yer alıyor? URL üzerinden gitmek yanıltabilir. Opencart konusunda bilgili değilim. Veriler efekt-pedal-processor-akustik-nux-pa-2-ur... satırınrdaki gibi mi veritabanında? alattin 1 yıl önce
  • Merhaba, Evet bütün linkler birbirinden farklı ve yukarıda örnekte verdiğim gibiler. ^/ bu işaretle başlayan kısımların hepsini temizlemem gerekiyor. Biraz karışık ama mutlaka bir kolay yolu vardır diye düşünüyorum. delphpin 1 yıl önce
  • biraz düzenledim. Kontrol edersin. alattin 1 yıl önce
  • Teşekkür ederim, sorun çözüldü şimdi. :) delphpin 1 yıl önce

üyelik gerektirir

Cevap yazabilmek için üye girişi yapmalısınız.

Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol