Math

LOG2

DuckDBDuckDB

Menghitung logaritma basis 2 dari sebuah angka. Berguna untuk perhitungan binary dan computer science.

Tipe hasil: DOUBLEDiperbarui: 6 Jan 2026

Syntax

SQL
LOG2(number)

Parameter

numberDOUBLEwajib

Angka yang akan dihitung log2-nya (harus > 0)

Contoh Penggunaan

Logaritma Basis 2

SQL
1SELECT
2 value,
3 LOG2(value) as log2_val,
4 FLOOR(LOG2(value)) as bits_needed
5FROM (
6 SELECT unnest([1, 2, 4, 8, 16, 100, 1000]) as value
7);

Menghitung log2 dan jumlah bit yang dibutuhkan.

Hasil
valuelog2_valbits_needed
100
211
422
833
... 3 baris lainnya

Binary Tree Depth

SQL
1SELECT
2 node_count,
3 CEILING(LOG2(node_count + 1)) as min_tree_depth
4FROM (
5 SELECT unnest([1, 3, 7, 15, 31, 100]) as node_count
6);

Menghitung kedalaman minimum binary tree untuk n nodes.

Hasil
node_countmin_tree_depth
11
32
73
154
... 2 baris lainnya

Storage Size Categories

SQL
1SELECT
2 file_size_bytes,
3 CASE FLOOR(LOG2(file_size_bytes) / 10)
4 WHEN 0 THEN 'Bytes'
5 WHEN 1 THEN 'KB'
6 WHEN 2 THEN 'MB'
7 WHEN 3 THEN 'GB'
8 ELSE 'TB+'
9 END as size_category
10FROM files;

Mengkategorikan file berdasarkan ukuran menggunakan log2.

Hasil
file_size_bytessize_category
500Bytes
5000KB
5000000MB
5000000000GB

Fungsi Terkait