Giriş yapmadınız.

Duyuru

TÜRKÇE KİTAP DUYURUSU:
Laravel 5 : Laravel 5.1 Güzelliği (Türkçe)
Vue.js 2 : Vue.js 2 Majesteleri (Türkçe)

#1 27.01.2019 14:19:14

bhdr
Üye
Kayıtlı: 09.06.2018
Mesajlar: 73

İki sütundaki verileri çarpıp sonuçları toplama

cart tablomda user_id, price ve piece kolonlarım var. Aynı user_id'ye sahip kayıtların price kolonunu piece ile çarpıp toplamını yazdırmak istiyorum. Açıkçası sepettekç ürünleri adetleri ile çarpıp toplamını göstermeye çalışıyorum. Örneğin cep telefonu 1000 tl price kolonunda, adet 2 piece kolonunda, bu veriden 3 adet var, 100*2 (price*piece) ve diğer 2 kayıtta da aynı şey, toplamları (600tl).

where('user_id', Auth::id())->sum(price*piece)->count()

tarzında birşey. Bir türlü yapamadım.

Çevrimdışı

#2 27.01.2019 15:35:59

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,496
Website

Yanıt: İki sütundaki verileri çarpıp sonuçları toplama

selectRaw('FORMAT(price * piece, 2) AS total')->where('user_id', Auth::id())->get()

Çevrimdışı

#3 27.01.2019 16:33:29

bhdr
Üye
Kayıtlı: 09.06.2018
Mesajlar: 73

Yanıt: İki sütundaki verileri çarpıp sonuçları toplama

Sorguyu şu şekilde yaptım;

{{ $tiss = DB::table('shopping_carts')->selectRaw('FORMAT(price * piece, 2) AS total')->where('grocer_id', $gro->id)->where('user_id', Auth::id())->get() }}

Çıktı şu şekilde oluyor hocam;

[{"total":"10.00"},{"total":"10.00"},{"total":"40.00"}]

Yalın olarak alabiliyor muyum sonucu? 60.00 olarak..

Çevrimdışı

#4 27.01.2019 16:41:03

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,496
Website

Yanıt: İki sütundaki verileri çarpıp sonuçları toplama

Şimdi sum kullanacaksınız. Tüm sepetin toplamı için:

$cartTotal = $tiss->sum('total');

Çevrimdışı

#5 27.01.2019 16:44:54

bhdr
Üye
Kayıtlı: 09.06.2018
Mesajlar: 73

Yanıt: İki sütundaki verileri çarpıp sonuçları toplama

mgsmus yazdı:

Şimdi sum kullanacaksınız. Tüm sepetin toplamı için:

$cartTotal = $tiss->sum('total');

Teşekkürler hocam bu şekilde çözdüm, bir şey daha öğrenmiş oldum sayenizde..

Çevrimdışı

Forum alt kısmı