BIT_GET
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
BIT_GET()
函数提取给定位置的位值
SELECT bit_get(3, 0), bit_get(3, 2);
create.select( bitGet(inline(3), 0), bitGet(inline(3), 2)).fetch();
结果是
+---------+---------+ | bit_get | bit_get | +---------+---------+ | 1 | 0 | +---------+---------+
方言支持
此示例使用 jOOQ
bitGet(inline(3), 2)
翻译成以下特定方言的表达式
ASE, SQLDataWarehouse, Sybase
((3 & (1 * CAST(power(2, 2) AS int))) / CAST(power(2, 2) AS int))
Aurora MySQL, Aurora Postgres, BigQuery, CockroachDB, DuckDB, MariaDB, MemSQL, MySQL, Postgres, Redshift, SQLite, Vertica, YugabyteDB
((3 & (1 << 2)) >> 2)
ClickHouse
bitTest(3, 2)
Databricks
bit_get(3, 2)
DB2, Informix
(bitand( 3, (1 * CAST(power(2, 2) AS integer)) ) / CAST(power(2, 2) AS integer))
Exasol
CASE bit_check(3, 2) WHEN TRUE THEN 1 WHEN FALSE THEN 0 END
Firebird
bin_shr( bin_and( 3, bin_shl(1, 2) ), 2 )
H2
CASE bitget(3, 2) WHEN TRUE THEN 1 WHEN FALSE THEN 0 END
HSQLDB
(bitand( 3, (1 * CAST(power(2, 2) AS int)) ) / CAST(power(2, 2) AS int))
Oracle
(bitand( 3, (1 * CAST(power(2, 2) AS number(10))) ) / CAST(power(2, 2) AS number(10)))
Snowflake
bitshiftright( bitand( 3, bitshiftleft(1, 2) ), 2 )
SQLServer
get_bit(3, 2)
Teradata
getbit(3, 2)
Trino
bitwise_right_shift( bitwise_and( 3, bitwise_left_shift(1, 2) ), 2 )
Access, Derby, Hana
/* UNSUPPORTED */
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!