DROP DATABASE IF EXISTS func_bit; CREATE DATABASE func_bit; USE func_bit; CREATE TABLE t1 (a DECIMAL(30,1) NOT NULL); INSERT INTO t1 VALUES (99999999999999999999999999999.9); INSERT INTO t1 VALUES (28446744073709551615); INSERT INTO t1 VALUES (2.9); INSERT INTO t1 VALUES (-2.9); INSERT INTO t1 VALUES (-28446744073709551615); INSERT INTO t1 VALUES (-99999999999999999999999999999.9); SELECT a, a & a, a | a, a^0, a<<2, a>>2, bit_count(a) FROM t1; a a & a a | a a^0 a<<2 a>>2 bit_count(a) 99999999999999999999999999999.9 18446744073709551615 18446744073709551615 18446744073709551615 18446744073709551612 4611686018427387903 64 28446744073709551615.0 18446744073709551615 18446744073709551615 18446744073709551615 18446744073709551612 4611686018427387903 64 2.9 3 3 3 12 0 2 -2.9 18446744073709551613 18446744073709551613 18446744073709551613 18446744073709551604 4611686018427387903 63 -28446744073709551615.0 9223372036854775808 9223372036854775808 9223372036854775808 0 2305843009213693952 1 -99999999999999999999999999999.9 9223372036854775808 9223372036854775808 9223372036854775808 0 2305843009213693952 1 DROP TABLE t1; CREATE TABLE t1 (a DECIMAL(20,0) NOT NULL); INSERT INTO t1 VALUES (99999999999999999999); INSERT INTO t1 VALUES (28446744073709551615); INSERT INTO t1 VALUES (-28446744073709551615); INSERT INTO t1 VALUES (-99999999999999999999); SELECT a, a & a, a | a, a^0, a<<2, a<<0, a>>1, bit_count(a) FROM t1; a a & a a | a a^0 a<<2 a<<0 a>>1 bit_count(a) 99999999999999999999 18446744073709551615 18446744073709551615 18446744073709551615 18446744073709551612 18446744073709551615 9223372036854775807 64 28446744073709551615 18446744073709551615 18446744073709551615 18446744073709551615 18446744073709551612 18446744073709551615 9223372036854775807 64 -28446744073709551615 9223372036854775808 9223372036854775808 9223372036854775808 0 9223372036854775808 4611686018427387904 1 -99999999999999999999 9223372036854775808 9223372036854775808 9223372036854775808 0 9223372036854775808 4611686018427387904 1 DROP TABLE t1; CREATE TABLE t1 (a DECIMAL(10,1) NOT NULL); INSERT INTO t1 VALUES (999999999.9); INSERT INTO t1 VALUES (3.5); INSERT INTO t1 VALUES (3.4); INSERT INTO t1 VALUES (2.9); INSERT INTO t1 VALUES (-2.9); INSERT INTO t1 VALUES (-3.4); INSERT INTO t1 VALUES (-3.5); INSERT INTO t1 VALUES (-999999999.9); SELECT a, a & a, a | a, a^0, a<<2, a>>2, bit_count(a) FROM t1; a a & a a | a a^0 a<<2 a>>2 bit_count(a) 999999999.9 1000000000 1000000000 1000000000 4000000000 250000000 13 3.5 4 4 4 16 1 1 3.4 3 3 3 12 0 2 2.9 3 3 3 12 0 2 -2.9 18446744073709551613 18446744073709551613 18446744073709551613 18446744073709551604 4611686018427387903 63 -3.4 18446744073709551613 18446744073709551613 18446744073709551613 18446744073709551604 4611686018427387903 63 -3.5 18446744073709551612 18446744073709551612 18446744073709551612 18446744073709551600 4611686018427387903 62 -999999999.9 18446744072709551616 18446744072709551616 18446744072709551616 18446744069709551616 4611686018177387904 43 DROP TABLE t1; CREATE TABLE t1 (a DECIMAL(10,0) NOT NULL); INSERT INTO t1 VALUES (9999999999); INSERT INTO t1 VALUES (3); INSERT INTO t1 VALUES (-3); INSERT INTO t1 VALUES (-9999999999); SELECT a, a & a, a | a, a^0, a<<2, a<<0, a>>1, bit_count(a) FROM t1; a a & a a | a a^0 a<<2 a<<0 a>>1 bit_count(a) 9999999999 9999999999 9999999999 9999999999 39999999996 9999999999 4999999999 20 3 3 3 3 12 3 1 2 -3 18446744073709551613 18446744073709551613 18446744073709551613 18446744073709551604 18446744073709551613 9223372036854775806 63 -9999999999 18446744063709551617 18446744063709551617 18446744063709551617 18446744033709551620 18446744063709551617 9223372031854775808 45 DROP TABLE t1; CREATE TABLE t1 (a VARCHAR(30) NOT NULL); INSERT INTO t1 VALUES ('2.9'); INSERT INTO t1 VALUES ('18446744073709551610'); SELECT a, a & a, a | a, a^0, a<<1, a<<0, a>>1, bit_count(a) FROM t1; a a & a a | a a^0 a<<1 a<<0 a>>1 bit_count(a) 2.9 3 3 3 6 3 1 2 18446744073709551610 18446744073709551610 18446744073709551610 18446744073709551610 18446744073709551604 18446744073709551610 9223372036854775805 62 DROP TABLE t1; CREATE TABLE t1 (a DOUBLE NOT NULL); INSERT INTO t1 VALUES (2.9); INSERT INTO t1 VALUES (10e30); SELECT a, a & a, a | a, a^0, a<<2, a<<0, a>>1, bit_count(a) FROM t1; a a & a a | a a^0 a<<2 a<<0 a>>1 bit_count(a) 2.9 3 3 3 12 3 1 2 1e31 18446744073709551615 18446744073709551615 18446744073709551615 18446744073709551612 18446744073709551615 9223372036854775807 64 DROP TABLE t1; CREATE TABLE t1 (a TIME(1) NOT NULL); INSERT INTO t1 VALUES ('00:00:02.9'); INSERT INTO t1 VALUES ('800:00:02.9'); INSERT INTO t1 VALUES ('-800:00:02.9'); SELECT a, a & a, a | a, a^0, a<<1, a<<0, a>>1, bit_count(a) FROM t1; a a & a a | a a^0 a<<1 a<<0 a>>1 bit_count(a) 00:00:02.9 3 3 3 6 3 1 2 800:00:02.9 8000003 8000003 8000003 16000006 8000003 4000001 9 -800:00:02.9 18446744073701551613 18446744073701551613 18446744073701551613 18446744073693551610 18446744073701551613 9223372036850775806 56 DROP TABLE t1; CREATE TABLE t1 (a DATETIME(1) NOT NULL); INSERT INTO t1 VALUES ('2001-01-01 00:00:02.9'); INSERT INTO t1 VALUES ('2001-01-01 23:59:59.9'); INSERT INTO t1 VALUES ('9999-12-31 23:59:59.9'); SELECT a, a & a, a | a, a^0, a<<1, a<<0, a>>1, bit_count(a) FROM t1; a a & a a | a a^0 a<<1 a<<0 a>>1 bit_count(a) 2001-01-01 00:00:02.9 20010101000003 20010101000003 20010101000003 40020202000006 20010101000003 10005050500001 24 2001-01-01 23:59:59.9 20010101235960 20010101235960 20010101235960 40020202471920 20010101235960 10005050617980 25 9999-12-31 23:59:59.9 99991231235960 99991231235960 99991231235960 199982462471920 99991231235960 49995615617980 23 DROP TABLE t1; CREATE TABLE t1 (a INT NOT NULL); INSERT INTO t1 VALUES (63),(64),(65); SELECT a, 1<>a FROM t1; a 1<>a 63 9223372036854775808 0 64 0 0 65 0 0 DROP TABLE t1; # # MCOL-4666 Empty set when using BIT OR and BIT AND functions in WHERE # CREATE TABLE t1 (a DECIMAL(18,2)); INSERT INTO t1 VALUES (3.4); SELECT a, a|4, a&4 FROM t1; a a|4 a&4 3.40 7 0 SELECT * FROM t1 WHERE (a|4) <> a; a 3.40 SELECT * FROM t1 WHERE (a&4) <> a; a 3.40 DROP TABLE t1; DROP DATABASE func_bit; USE test;