* split up select.md * array-join.md basic refactoring * distinct.md basic refactoring * format.md basic refactoring * from.md basic refactoring * group-by.md basic refactoring * having.md basic refactoring * additional index.md refactoring * into-outfile.md basic refactoring * join.md basic refactoring * limit.md basic refactoring * limit-by.md basic refactoring * order-by.md basic refactoring * prewhere.md basic refactoring * adjust operators/index.md links * adjust sample.md links * adjust more links * adjust operatots links * fix some links * adjust aggregate function article titles * basic refactor of remaining select clauses * absolute paths in make_links.sh * run make_links.sh * remove old select.md locations * translate docs/es * translate docs/fr * translate docs/fa * remove old operators.md location * change operators.md links * adjust links in docs/es * adjust links in docs/es * minor texts adjustments * wip * update machine translations to use new links * fix changelog * es build fixes * get rid of some select.md links * temporary adjust ru links * temporary adjust more ru links * improve curly brace handling * adjust ru as well * fa build fix * ru link fixes * zh link fixes * temporary disable part of anchor checks
4.1 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | 72537a2d52 |
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’ İş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.