ClickHouse/docs/tr/sql-reference/functions/arithmetic-functions.md
Ivan Blinkov d91c97d15d
[docs] replace underscores with hyphens (#10606)
* Replace underscores with hyphens

* remove temporary code

* fix style check

* fix collapse
2020-04-30 21:19:18 +03:00

4.1 KiB
Raw Blame History

machine_translated machine_translated_rev toc_priority toc_title
true e8cd92bba3 35 Aritmetik

Aritmetik Fonksiyonlar

Tüm aritmetik işlevler için, sonuç türü, böyle bir tür varsa, sonucun sığdığı en küçük sayı türü olarak hesaplanır. Minimum, bit sayısına, imzalanıp imzalanmadığına ve yüzüp yüzmediğine bağlı olarak aynı anda alınır. Yeterli bit yoksa, en yüksek bit türü alınır.

Örnek:

SELECT toTypeName(0), toTypeName(0 + 0), toTypeName(0 + 0 + 0), toTypeName(0 + 0 + 0 + 0)
┌─toTypeName(0)─┬─toTypeName(plus(0, 0))─┬─toTypeName(plus(plus(0, 0), 0))─┬─toTypeName(plus(plus(plus(0, 0), 0), 0))─┐
│ UInt8         │ UInt16                 │ UInt32                          │ UInt64                                   │
└───────────────┴────────────────────────┴─────────────────────────────────┴──────────────────────────────────────────┘

Aritmetik fonksiyonlar, uint8, Uİnt16, Uİnt32, Uint64, Int8, Int16, Int32, Int64, Float32 veya Float64 türlerinden herhangi bir çift için çalışır.

Taşma, C++ile aynı şekilde üretilir.

artı (a, b), A + B operatörü

Sayıların toplamını hesaplar. Ayrıca bir tarih veya tarih ve Saat ile tamsayı numaraları ekleyebilirsiniz. Bir tarih durumunda, bir tamsayı eklemek, karşılık gelen gün sayısını eklemek anlamına gelir. Zamanla bir tarih için, karşılık gelen saniye sayısını eklemek anlamına gelir.

eksi (a, b), A - B operatörü

Farkı hesaplar. Sonuç her zaman imzalanır.

You can also calculate integer numbers from a date or date with time. The idea is the same see above for plus.

çarp operatorma (a, b), A * B operatörü

Sayıların ürününü hesaplar.

böl (a, b), A / B operatörü

Sayıların bölümünü hesaplar. Sonuç türü her zaman bir kayan nokta türüdür. Tam sayı bölümü değildir. Tamsayı bölümü için, intDiv işlev. Sıfıra bölerek zaman olsun inf, -inf, veya nan.

ıntdiv(a, b)

Sayıların bölümünü hesaplar. Tamsayılara bölünür, yuvarlanır (mutlak değere göre). Sıfıra bölünürken veya en az negatif sayıyı eksi bir ile bölürken bir istisna atılır.

ıntdivorzero(a, b)

Farklıdır intDiv bu, sıfıra bölünürken veya en az bir negatif sayıyı eksi bir ile bölerek sıfır döndürür.

modulo (a, b), A % B operatörü

Bölünmeden sonra kalan hesaplar. Bağımsız değişkenler kayan nokta sayılarıysa, ondalık bölümü bırakarak tamsayılara önceden dönüştürülürler. Kalan C++ile aynı anlamda alınır. Kesik bölme negatif sayılar için kullanılır. Sıfıra bölünürken veya en az negatif sayıyı eksi bir ile bölürken bir istisna atılır.

moduloOrZero(a, b)

Farklıdır modulo bölen sıfır olduğunda sıfır döndürür.

negate (a), - bir operatör

Ters işareti ile bir sayı hesaplar. Sonuç her zaman imzalanır.

abs (a)

(A) sayısının mutlak değerini hesaplar. Yani, < 0 ise,- A döndürür. imzasız türler için hiçbir şey yapmaz. İmzalı tamsayı türleri için imzasız bir sayı döndürür.

gcd (a, b)

Sayıların en büyük ortak böleni döndürür. Sıfıra bölünürken veya en az negatif sayıyı eksi bir ile bölürken bir istisna atılır.

lcm(a, b)

Sayıların en az ortak katını döndürür. Sıfıra bölünürken veya en az negatif sayıyı eksi bir ile bölürken bir istisna atılır.

Orijinal makale