Bagikan melalui


BIT_COUNT (Transact SQL)

Berlaku untuk: Titik akhir analitik SQL Server 2022 (16.x) Azure SQL DatabaseAzure SQL Managed InstanceSQL di Microsoft FabricWarehouse di Microsoft Fabric

BIT_COUNT mengambil satu parameter dan mengembalikan jumlah bit yang diatur ke 1 dalam parameter tersebut sebagai jenis bigint .

Konvensi sintaks transact-SQL

Sintaks

BIT_COUNT ( expression_value )

Argumen

expression_value

Bilangan bulat atau ekspresi biner apa pun yang bukan objek besar (LOB).

Jenis Pengembalian

bigint

BIT_COUNT tidak dilemparkan sebelum menghitung jumlah bit. Ini karena angka yang sama dapat memiliki jumlah yang berbeda dalam representasi binernya tergantung pada jenis data.

Misalnya, SELECT BIT_COUNT (CAST (-1 as smallint)) dan SELECT BIT_COUNT (CAST (-1 as int)) akan mengembalikan masing-masing 16 dan 32. Ini dimaksudkan, karena representasi -1 biner dapat memiliki jumlah bit yang berbeda yang diatur ke 1 tergantung pada jenis data.

Keterangan

Dalam implementasi awal, fungsionalitas Kueri Terdistribusi untuk fungsi manipulasi bit dalam server tertaut atau kueri ad hoc (OPENQUERY) tidak akan didukung.

Contoh

J. Menghitung BIT_COUNT dalam nilai biner

Dalam contoh berikut, jumlah bit yang diatur ke 1 dalam nilai biner dihitung.

SELECT BIT_COUNT ( 0xabcdef ) as Count;

Hasilnya adalah 17. Ini karena 0xabcdef dalam biner adalah 1010 1011 1100 1101 1110 1111, dan ada 17 bit dengan nilai yang diatur ke 1.

B. Menghitung BIT_COUNT dalam bilangan bulat

Dalam contoh berikut, jumlah bit yang diatur ke 1 dalam bilangan bulat dihitung.

SELECT BIT_COUNT ( 17 ) as Count;

Hasilnya adalah 2. Ini karena 17 dalam biner adalah 0001 0001, dan hanya ada 2 bit dengan nilai yang diatur ke 1.

Baca juga