Şimdi Ara

mysql select string kolay toplama

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
5
Cevap
0
Favori
300
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba;

    Biraz karmaşık bir başlık oldu fakat mümkün mü değil mi öğrenmem lazım.

    mysql datatabesimin bir hücresinde 25,10-52,60-85,45-90,00 şeklinde veriler var.

    ve ben select yazarken bunların arasındaki - işaretini + işaretine çevirerek direk toplanlarını almam lazım.

    Örn:

    ----------------------------
    siparis_no | metre
    2565 |12,25-52,60-40,25
    2566 | 22,00-45,84
    2567 | 65,05-42,88
    ----------------------------


    select siparis_no,replace(metre,'-','+') as metre from table

    benzeri bir şekilde veri çekmek istediğimde ilgili satırları metin olarak algılıyor. Bunu mysql'de toplatabilir miyim?



    Sonuç olarak tek bir select kod ile istediğim sonuç;

    ----------------------------
    siparis_no | metre
    2565 | 105,10
    2566 | 67,84
    2567 | 107,93
    ----------------------------

    Yani mysql kodu içinde bunu yapabilir miyim?







  • baştan zaten yanlış yapmışsın bir kolona birden fazla veri girmişsin metreleri ayrı tabloda izlemen gerekirdi bence mümkünse ayrı tabloda metreleri tut ilişkilendirme yap

    öteki türlü yapacağın şu olabilir o metinleri - işaretinden ayırıp bir arraya atarsın elemanları sayıya çevirirsin ve hepsini toplarsın tabi bu dediğimi mysql tarafında bakmadım ama https://stackoverflow.com/questions/14496090/how-to-convert-varchar-to-double-in-sqlhttps://www.w3resource.com/mysql/string-functions/mysql-substring_index-function.php
    işine yarayabilir




  • Teşekkür ederim. Zaten şuan o şekilde yapıyorum dataarray ile.

    Aslında şöyle düşünün sütunları neden ayırmadığımı

    her bir sipariş numarasında kaç ayrı parça var ve bu parça sayısı kaçar metre.
    Ve bu sürekli adet olarak değişiyor. Bazısı 3 parça bazısı 20 parça
    Tek bir tabloda tutmam gerekiyor. Başka bir tablo kullanamam şuanda.

    Bu sebeple,
    Bunu en iyi bu şekilde bulacağımı düşündüğüm için böyle ayırdım.

    Şuan zaten sonuç tablolalarıma dataarray ile bunları toparlayabiliyorum.

    Fakat eğer mysql de direk "select" ile bunu yapabilsem çok güzel ve pratik olacak benim için.

    Bir çözüm var mı diye merak etmiştim.
  • quote:

    Orijinalden alıntı: ayanmucahit

    Teşekkür ederim. Zaten şuan o şekilde yapıyorum dataarray ile.

    Aslında şöyle düşünün sütunları neden ayırmadığımı

    her bir sipariş numarasında kaç ayrı parça var ve bu parça sayısı kaçar metre.
    Ve bu sürekli adet olarak değişiyor. Bazısı 3 parça bazısı 20 parça
    Tek bir tabloda tutmam gerekiyor. Başka bir tablo kullanamam şuanda.

    Bu sebeple,
    Bunu en iyi bu şekilde bulacağımı düşündüğüm için böyle ayırdım.

    Şuan zaten sonuç tablolalarıma dataarray ile bunları toparlayabiliyorum.

    Fakat eğer mysql de direk "select" ile bunu yapabilsem çok güzel ve pratik olacak benim için.

    Bir çözüm var mı diye merak etmiştim.
    Bu konu hala açık.

    Sql içinde başka bir çözümümüz var mıdır?




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.