Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: SQL Server 2022 (16.x)
Azure SQL Database
AzureSQL Managed Instance
Titik akhir analitik SQL di Microsoft Fabric
Warehouse di Microsoft Fabric
SQL database di Microsoft Fabric
BIT_COUNT mengambil satu parameter dan mengembalikan jumlah bit yang diatur ke 1 dalam parameter tersebut sebagai jenis bigint.
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 melemparkan inputnya sebelum menghitung bit. Karena representasi biner dari angka yang sama bergantung pada tipe datanya, hasilnya tergantung pada jenis input.
Misalnya, kueri berikut masing-masing mengembalikan 16 dan 32,
SELECT BIT_COUNT(CAST (-1 AS SMALLINT)); -- Returns 16
SELECT BIT_COUNT(CAST (-1 AS INT)); -- Returns 32
BIT_COUNT mengembalikan NULL ketika expression_value diketik NULL dari tipe data yang didukung. Anda harus mentransmisikan literal yang tidak diketik NULL ke jenis yang didukung sebelum meneruskannya:
SELECT BIT_COUNT(CAST (NULL AS INT)); -- Returns NULL
Keterangan
Fungsionalitas kueri terdistribusi untuk fungsi manipulasi bit dalam server tertaut atau kueri ad hoc (OPENQUERY) tidak didukung.
Jenis data objek besar (LOB) di Mesin Database dapat menyimpan data yang melebihi 8.000 byte. Jenis data ini menyimpan data pada halaman data luapan baris. LOB juga mencakup jenis data yang menyimpan data pada struktur halaman LOB khusus, yang menggunakan teks atau penunjuk gambar referensi dalam baris ke halaman data LOB. Untuk informasi selengkapnya tentang penyimpanan data, lihat Panduan arsitektur halaman dan tingkat.
Fungsi manipulasi bit beroperasi pada kecil, smallint , int, bigint, biner (n), dan varbinary(n) jenis data. Fungsi-fungsi ini tidak mendukung tipe data objek besar (LOB), seperti jenis BLOB varchar(max), nvarchar(max), varbinary(max), image, ntext, text, xml, dan Common Language runtime (CLR).
Contoh
J. Menghitung BIT_COUNT dalam nilai biner
Contoh berikut menghitung jumlah bit yang diatur ke 1 dalam nilai biner.
SELECT BIT_COUNT(0xABCDEF) AS Count;
Hasilnya adalah 17. Hasil ini terjadi karena 0xABCDEF dalam biner adalah 1010 1011 1100 1101 1110 1111, yang memiliki 17 bit diatur ke 1.
B. Menghitung BIT_COUNT dalam bilangan bulat
Contoh berikut menghitung jumlah bit yang diatur ke 1 dalam bilangan bulat.
SELECT BIT_COUNT(17) AS Count;
Hasilnya adalah 2. Hasil ini terjadi karena 17 dalam biner adalah 0001 0001, yang hanya memiliki dua bit yang diatur ke 1.