En iyi yanıtlayıcılar
Hesaplamada miktar kontrolü

Soru
-
Merhaba Arkadaşlar
MS SQL,
Aşağıda bir hesaplama yapılıyor, Amount un 0 gelmesi durumunda sonucu 0 döndürüyor, Amount un 0 olması durumunda çarpma işlemini yapmamalı direk Price ı döndürmeli case dışında yapılacak bir işlem olabilir mi acaba
ISNULL(d.Amount,0) * isnull(d.Price,0)
Yanıtlar
-
case'in nesini beğenmediniz?
IIF(d.amount IS NULL OR d.amount = 0, 1, d.amount) * COALESCE(price,0)
How to create a Minimal, Reproducible Example
The way to Go.
World's most advanced open source (object-) relational Database.
Flutter (for mobile, for web & desktop.- Yanıt Olarak İşaretleyen csharpogreniyorum 27 Aralık 2019 Cuma 07:49
Tüm Yanıtlar
-
case'in nesini beğenmediniz?
IIF(d.amount IS NULL OR d.amount = 0, 1, d.amount) * COALESCE(price,0)
How to create a Minimal, Reproducible Example
The way to Go.
World's most advanced open source (object-) relational Database.
Flutter (for mobile, for web & desktop.- Yanıt Olarak İşaretleyen csharpogreniyorum 27 Aralık 2019 Cuma 07:49
-
-
case'in nesini beğenmediniz?
IIF(d.amount IS NULL OR d.amount = 0, 1, d.amount) * COALESCE(price,0)
IIF'i de Case den farklı düşünmek lazım mı bilemedim, çalışma planları aynı olur gibi geliyor bana. İlla koşul koyulmayacaksa matematik kullansak ya :)
select POWER(Amount, SIGN(Amount)) * COALESCE(Price,0)
Miktarın negatif olmadığı kabülü var tabii .. ayrıca sadece soruya göre cevap yazdım. Soruda "performans" kelimesi geçmiyor!!!!
- Düzenleyen Cihan YakarMVP 27 Aralık 2019 Cuma 09:11
-
case'in performans uzerine etkisi olacagini dusunmuyorum.
How to create a Minimal, Reproducible Example
The way to Go.
World's most advanced open source (object-) relational Database.
Flutter (for mobile, for web & desktop.