v2.5.2
Giriş yap

2 Tarih Arasındaki Fiyat Toplamı?

acemi
367 defa görüntülendi ve 2 kişi tarafından değerlendirildi

şimdi ben

Aylar içerisindeki atıyorum şubat ayı içerisindeki fiyatların toplamını almak istiyorum ve

şuanki zamandan atıyorum bugün ayın 19 u ayın 19 una kadar olan fiyatların toplamını

yıl içerisindeki 2019 a ait toplam fiyatı gibi bunları nasıl yapabilirim.
yardımcı olabilirmisiniz, teşekkürler.

Cevap yaz
Cevaplar (5)
h4ckdr0
669 gün önce

PHP kullanarak fiyatlar içerisinden belirli bir tarih aralığı veya aya ait toplam fiyatı hesaplamak için öncelikle verilerinizi bir veritabanında saklamanız gerekir. Daha sonra, veritabanı sorguları kullanarak istediğiniz tarih aralığındaki veya aya ait fiyatları sorgulayabilirsiniz. Örneğin, şubat ayı için fiyatları sorgulamak için aşağıdaki gibi bir SQL sorgusu kullanabilirsiniz:

SELECT SUM(price) FROM prices WHERE MONTH(date) = 2;

Bu sorgu, "prices" adlı tablonun "date" sütununda şubat ayı olan tüm kayıtların "price" sütununda yer alan değerlerin toplamını döndürür.

Bu sorguyu PHP kullanarak çalıştırmak için, PDO (PHP Data Objects) veya MySQLi kullanabilirsiniz. Örneğin, PDO kullanarak sorguyu çalıştırmak için aşağıdaki gibi bir kod parçacığı kullanabilirsiniz:

$pdo = new PDO('mysql:host=hostname;dbname=database_name', 'username', 'password');
$stmt = $pdo->prepare('SELECT SUM(price) FROM prices WHERE MONTH(date) = ?');
$stmt->execute([2]);
$total_price = $stmt->fetchColumn();

Bu kod parçacığı, veritabanına bağlanır, şubat ayı için fiyatların toplamını sorgulayan bir sorgu hazırlar ve sonuçları $total_price değişkenine atar.

Dilerseniz fiyatların toplamının yanı sıra fiyatların sayısını ve ortalamasını da sorgulayabilirsiniz.

acemi
674 gün önce

@codepacks

peki ben tablolaları datetime olarak tutuyorum tarih sütünlarını daha doğrusu bir problem teşkil etmez umarım.

mesela
$Func->q("SELECT SUM(ucret) as son45 FROM isler WHERE is_tarihi BETWEEN DATE_SUB( CURDATE() ,INTERVAL 45 DAY ) AND CURDATE()")->fetch(2);

bu şekilde bugün hariç son 45 güçlük ücretler toplamını alıyorum
$Func->q("SELECT SUM(ucret) as Bugun FROM isler WHERE DAY(is_tarihi) = DAY(CURDATE());")->fetch(2);
böylede bugünün toplamını alyıorum iyice kafam karıştı yine :)

ama sanırım senin verdiğin çözüm olabilir müsait olduğumda deneyeceğim oylayacağım teşekkür ederim.

codepacks
674 gün önce

2 tarih arasındaki verileri seçmek için BETWEEN ifadesini kullanabilirsin.
Aylık veya yıllık fiyat toplamlarını almak için ise grupby bölme yapabilirsin.

Örnek kodlar

$b_tarih = '2022-01-01';//başlangıç tarihi
$e_tarih = '2022-12-31'; //bitiş tarihi

$stmt = $pdo->prepare("SELECT MONTH(tarih) as month, SUM(fiyat) as toplam_fiyat FROM siparisler WHERE tarih BETWEEN :b_tarih AND :e_tarih GROUP BY MONTH(tarih)");
$stmt->bindParam(':b_tarih', $b_tarih);
$stmt->bindParam(':e_tarih', $e_tarih);
$stmt->execute(); 

// Dizeyi ilişkisel olarak ayarlamak 

$result = $stmt->setFetchMode(PDO::FETCH_ASSOC); 
foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) { 
    echo $v;
}

Bu kod veritabanında "siparisler" tablosunda "tarih"
sütununda 2022 yılına ait verileri arar ve bulunan verileri ay bazlı toplar.

acemi
674 gün önce

php tarafından

abdullahx
674 gün önce

mysql den mi nereden?