Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into replicas-shards-for-mysql-and-postgres

This commit is contained in:
kssenii 2021-04-05 15:36:35 +00:00
commit dc42d5189d
124 changed files with 1836 additions and 902 deletions

View File

@ -26,7 +26,7 @@
#### Experimental feature #### Experimental feature
* Add experimental `Replicated` database engine. It replicates DDL queries across multiple hosts. [#16193](https://github.com/ClickHouse/ClickHouse/pull/16193) ([tavplubix](https://github.com/tavplubix)). * Add experimental `Replicated` database engine. It replicates DDL queries across multiple hosts. [#16193](https://github.com/ClickHouse/ClickHouse/pull/16193) ([tavplubix](https://github.com/tavplubix)).
* Introduce experimental support for window functions, enabled with `allow_experimental_functions = 1`. This is a preliminary, alpha-quality implementation that is not suitable for production use and will change in backward-incompatible ways in future releases. Please see [the documentation](https://github.com/ClickHouse/ClickHouse/blob/master/docs/en/sql-reference/window-functions/index.md#experimental-window-functions) for the list of supported features. [#20337](https://github.com/ClickHouse/ClickHouse/pull/20337) ([Alexander Kuzmenkov](https://github.com/akuzm)). * Introduce experimental support for window functions, enabled with `allow_experimental_window_functions = 1`. This is a preliminary, alpha-quality implementation that is not suitable for production use and will change in backward-incompatible ways in future releases. Please see [the documentation](https://github.com/ClickHouse/ClickHouse/blob/master/docs/en/sql-reference/window-functions/index.md#experimental-window-functions) for the list of supported features. [#20337](https://github.com/ClickHouse/ClickHouse/pull/20337) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* Add the ability to backup/restore metadata files for DiskS3. [#18377](https://github.com/ClickHouse/ClickHouse/pull/18377) ([Pavel Kovalenko](https://github.com/Jokser)). * Add the ability to backup/restore metadata files for DiskS3. [#18377](https://github.com/ClickHouse/ClickHouse/pull/18377) ([Pavel Kovalenko](https://github.com/Jokser)).
#### Performance Improvement #### Performance Improvement

View File

@ -464,6 +464,7 @@ find_contrib_lib(double-conversion) # Must be before parquet
include (cmake/find/ssl.cmake) include (cmake/find/ssl.cmake)
include (cmake/find/ldap.cmake) # after ssl include (cmake/find/ldap.cmake) # after ssl
include (cmake/find/icu.cmake) include (cmake/find/icu.cmake)
include (cmake/find/xz.cmake)
include (cmake/find/zlib.cmake) include (cmake/find/zlib.cmake)
include (cmake/find/zstd.cmake) include (cmake/find/zstd.cmake)
include (cmake/find/ltdl.cmake) # for odbc include (cmake/find/ltdl.cmake) # for odbc

27
cmake/find/xz.cmake Normal file
View File

@ -0,0 +1,27 @@
option (USE_INTERNAL_XZ_LIBRARY "Set to OFF to use system xz (lzma) library instead of bundled" ${NOT_UNBUNDLED})
if(NOT EXISTS "${ClickHouse_SOURCE_DIR}/contrib/xz/src/liblzma/api/lzma.h")
if(USE_INTERNAL_XZ_LIBRARY)
message(WARNING "submodule contrib/xz is missing. to fix try run: \n git submodule update --init --recursive")
message (${RECONFIGURE_MESSAGE_LEVEL} "Can't find internal xz (lzma) library")
set(USE_INTERNAL_XZ_LIBRARY 0)
endif()
set(MISSING_INTERNAL_XZ_LIBRARY 1)
endif()
if (NOT USE_INTERNAL_XZ_LIBRARY)
find_library (XZ_LIBRARY lzma)
find_path (XZ_INCLUDE_DIR NAMES lzma.h PATHS ${XZ_INCLUDE_PATHS})
if (NOT XZ_LIBRARY OR NOT XZ_INCLUDE_DIR)
message (${RECONFIGURE_MESSAGE_LEVEL} "Can't find system xz (lzma) library")
endif ()
endif ()
if (XZ_LIBRARY AND XZ_INCLUDE_DIR)
elseif (NOT MISSING_INTERNAL_XZ_LIBRARY)
set (USE_INTERNAL_XZ_LIBRARY 1)
set (XZ_LIBRARY liblzma)
set (XZ_INCLUDE_DIR ${ClickHouse_SOURCE_DIR}/contrib/xz/src/liblzma/api)
endif ()
message (STATUS "Using xz (lzma): ${XZ_INCLUDE_DIR} : ${XZ_LIBRARY}")

2
contrib/NuRaft vendored

@ -1 +1 @@
Subproject commit 70468326ad5d72e9497944838484c591dae054ea Subproject commit 241fd3754a1eb4d82ab68a9a875dc99391ec9f02

View File

@ -138,7 +138,8 @@
"docker/test/stateless_unbundled", "docker/test/stateless_unbundled",
"docker/test/stateless_pytest", "docker/test/stateless_pytest",
"docker/test/integration/base", "docker/test/integration/base",
"docker/test/fuzzer" "docker/test/fuzzer",
"docker/test/keeper-jepsen"
] ]
}, },
"docker/packager/unbundled": { "docker/packager/unbundled": {
@ -159,5 +160,9 @@
"docker/test/sqlancer": { "docker/test/sqlancer": {
"name": "yandex/clickhouse-sqlancer-test", "name": "yandex/clickhouse-sqlancer-test",
"dependent": [] "dependent": []
},
"docker/test/keeper-jepsen": {
"name": "yandex/clickhouse-keeper-jepsen-test",
"dependent": []
} }
} }

View File

@ -15,7 +15,6 @@ mkdir -p build/build_docker
cd build/build_docker cd build/build_docker
ccache --show-stats ||: ccache --show-stats ||:
ccache --zero-stats ||: ccache --zero-stats ||:
ln -s /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0 /usr/lib/libOpenCL.so ||:
rm -f CMakeCache.txt rm -f CMakeCache.txt
# Read cmake arguments into array (possibly empty) # Read cmake arguments into array (possibly empty)
read -ra CMAKE_FLAGS <<< "${CMAKE_FLAGS:-}" read -ra CMAKE_FLAGS <<< "${CMAKE_FLAGS:-}"

View File

@ -23,4 +23,3 @@ then
fi fi
fi fi
ccache --show-stats ||: ccache --show-stats ||:
ln -s /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0 /usr/lib/libOpenCL.so ||:

View File

@ -13,4 +13,3 @@ mv /*.rpm /output ||: # if exists
mv /*.tgz /output ||: # if exists mv /*.tgz /output ||: # if exists
ccache --show-stats ||: ccache --show-stats ||:
ln -s /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0 /usr/lib/libOpenCL.so ||:

View File

@ -69,11 +69,25 @@ function watchdog
killall -9 clickhouse-client ||: killall -9 clickhouse-client ||:
} }
function filter_exists
{
local path
for path in "$@"; do
if [ -e "$path" ]; then
echo "$path"
else
echo "'$path' does not exists" >&2
fi
done
}
function fuzz function fuzz
{ {
# Obtain the list of newly added tests. They will be fuzzed in more extreme way than other tests. # Obtain the list of newly added tests. They will be fuzzed in more extreme way than other tests.
# Don't overwrite the NEW_TESTS_OPT so that it can be set from the environment. # Don't overwrite the NEW_TESTS_OPT so that it can be set from the environment.
NEW_TESTS="$(grep -P 'tests/queries/0_stateless/.*\.sql' ci-changed-files.txt | sed -r -e 's!^!ch/!' | sort -R)" NEW_TESTS="$(grep -P 'tests/queries/0_stateless/.*\.sql' ci-changed-files.txt | sed -r -e 's!^!ch/!' | sort -R)"
# ci-changed-files.txt contains also files that has been deleted/renamed, filter them out.
NEW_TESTS="$(filter_exists $NEW_TESTS)"
if [[ -n "$NEW_TESTS" ]] if [[ -n "$NEW_TESTS" ]]
then then
NEW_TESTS_OPT="${NEW_TESTS_OPT:---interleave-queries-file ${NEW_TESTS}}" NEW_TESTS_OPT="${NEW_TESTS_OPT:---interleave-queries-file ${NEW_TESTS}}"

View File

@ -0,0 +1,39 @@
# docker build -t yandex/clickhouse-keeper-jepsen-test .
FROM yandex/clickhouse-test-base
ENV DEBIAN_FRONTEND=noninteractive
ENV CLOJURE_VERSION=1.10.3.814
# arguments
ENV PR_TO_TEST=""
ENV SHA_TO_TEST=""
ENV NODES_USERNAME="root"
ENV NODES_PASSWORD=""
ENV TESTS_TO_RUN="30"
ENV TIME_LIMIT="30"
# volumes
ENV NODES_FILE_PATH="/nodes.txt"
ENV TEST_OUTPUT="/test_output"
RUN mkdir "/root/.ssh"
RUN touch "/root/.ssh/known_hosts"
# install java
RUN apt-get update && apt-get install default-jre default-jdk libjna-java libjna-jni ssh gnuplot graphviz --yes --no-install-recommends
# install clojure
RUN curl -O "https://download.clojure.org/install/linux-install-${CLOJURE_VERSION}.sh" && \
chmod +x "linux-install-${CLOJURE_VERSION}.sh" && \
bash "./linux-install-${CLOJURE_VERSION}.sh"
# install leiningen
RUN curl -O "https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein" && \
chmod +x ./lein && \
mv ./lein /usr/bin
COPY run.sh /
CMD ["/bin/bash", "/run.sh"]

View File

@ -0,0 +1,22 @@
#!/usr/bin/env bash
set -euo pipefail
CLICKHOUSE_PACKAGE=${CLICKHOUSE_PACKAGE:="https://clickhouse-builds.s3.yandex.net/$PR_TO_TEST/$SHA_TO_TEST/clickhouse_build_check/clang-11_relwithdebuginfo_none_bundled_unsplitted_disable_False_binary/clickhouse"}
CLICKHOUSE_REPO_PATH=${CLICKHOUSE_REPO_PATH:=""}
if [ -z "$CLICKHOUSE_REPO_PATH" ]; then
CLICKHOUSE_REPO_PATH=ch
rm -rf ch ||:
mkdir ch ||:
wget -nv -nd -c "https://clickhouse-test-reports.s3.yandex.net/$PR_TO_TEST/$SHA_TO_TEST/repo/clickhouse_no_subs.tar.gz"
tar -C ch --strip-components=1 -xf clickhouse_no_subs.tar.gz
ls -lath ||:
fi
cd "$CLICKHOUSE_REPO_PATH/tests/jepsen.clickhouse-keeper"
(lein run test-all --nodes-file "$NODES_FILE_PATH" --username "$NODES_USERNAME" --logging-json --password "$NODES_PASSWORD" --time-limit "$TIME_LIMIT" --concurrency 50 -r 50 --snapshot-distance 100 --stale-log-gap 100 --reserved-log-items 10 --lightweight-run --clickhouse-source "$CLICKHOUSE_PACKAGE" -q --test-count "$TESTS_TO_RUN" || true) | tee "$TEST_OUTPUT/jepsen_run_all_tests.log"
mv store "$TEST_OUTPUT/"

View File

@ -31,9 +31,10 @@ toc_title: Cloud
## Alibaba Cloud {#alibaba-cloud} ## Alibaba Cloud {#alibaba-cloud}
Alibaba Cloud Managed Service for ClickHouse [China Site](https://www.aliyun.com/product/clickhouse) (Will be available at international site at May, 2021) provides the following key features: Alibaba Cloud Managed Service for ClickHouse. [China Site](https://www.aliyun.com/product/clickhouse) (will be available at the international site in May 2021). Provides the following key features:
- Highly reliable cloud disk storage engine based on Alibaba Cloud Apsara distributed system
- Expand capacity on demand without manual data migration - Highly reliable cloud disk storage engine based on [Alibaba Cloud Apsara](https://www.alibabacloud.com/product/apsara-stack) distributed system
- Expand capacity on-demand without manual data migration
- Support single-node, single-replica, multi-node, and multi-replica architectures, and support hot and cold data tiering - Support single-node, single-replica, multi-node, and multi-replica architectures, and support hot and cold data tiering
- Support access allow-list, one-key recovery, multi-layer network security protection, cloud disk encryption - Support access allow-list, one-key recovery, multi-layer network security protection, cloud disk encryption
- Seamless integration with cloud log systems, databases, and data application tools - Seamless integration with cloud log systems, databases, and data application tools

View File

@ -3,15 +3,52 @@ toc_priority: 32
toc_title: Atomic toc_title: Atomic
--- ---
# Atomic {#atomic} # Atomic {#atomic}
It supports non-blocking `DROP` and `RENAME TABLE` queries and atomic `EXCHANGE TABLES t1 AND t2` queries. `Atomic` database engine is used by default. It supports non-blocking [DROP TABLE](#drop-detach-table) and [RENAME TABLE](#rename-table) queries and atomic [EXCHANGE TABLES t1 AND t2](#exchange-tables) queries. `Atomic` database engine is used by default.
## Creating a Database {#creating-a-database} ## Creating a Database {#creating-a-database}
```sql ``` sql
CREATE DATABASE test ENGINE = Atomic; CREATE DATABASE test[ ENGINE = Atomic];
``` ```
[Original article](https://clickhouse.tech/docs/en/engines/database-engines/atomic/) <!--hide--> ## Specifics and recommendations {#specifics-and-recommendations}
### Table UUID {#table-uuid}
All tables in database `Atomic` have persistent [UUID](../../sql-reference/data-types/uuid.md) and store data in directory `/clickhouse_path/store/xxx/xxxyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/`, where `xxxyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy` is UUID of the table.
Usually, the UUID is generated automatically, but the user can also explicitly specify the UUID in the same way when creating the table (this is not recommended). To display the `SHOW CREATE` query with the UUID you can use setting [show_table_uuid_in_table_create_query_if_not_nil](../../operations/settings/settings.md#show_table_uuid_in_table_create_query_if_not_nil). For example:
```sql
CREATE TABLE name UUID '28f1c61c-2970-457a-bffe-454156ddcfef' (n UInt64) ENGINE = ...;
```
### RENAME TABLE {#rename-table}
`RENAME` queries are performed without changing UUID and moving table data. These queries do not wait for the completion of queries using the table and will be executed instantly.
### DROP/DETACH TABLE {#drop-detach-table}
On `DROP TABLE` no data is removed, database `Atomic` just marks table as dropped by moving metadata to `/clickhouse_path/metadata_dropped/` and notifies background thread. Delay before final table data deletion is specify by [database_atomic_delay_before_drop_table_sec](../../operations/server-configuration-parameters/settings.md#database_atomic_delay_before_drop_table_sec) setting.
You can specify synchronous mode using `SYNC` modifier. Use the [database_atomic_wait_for_drop_and_detach_synchronously](../../operations/settings/settings.md#database_atomic_wait_for_drop_and_detach_synchronously) setting to do this. In this case `DROP` waits for running `SELECT`, `INSERT` and other queries which are using the table to finish. Table will be actually removed when it's not in use.
### EXCHANGE TABLES {#exchange-tables}
`EXCHANGE` query swaps tables atomically. So instead of this non-atomic operation:
```sql
RENAME TABLE new_table TO tmp, old_table TO new_table, tmp TO old_table;
```
you can use one atomic query:
``` sql
EXCHANGE TABLES new_table AND old_table;
```
### ReplicatedMergeTree in Atomic Database {#replicatedmergetree-in-atomic-database}
For [ReplicatedMergeTree](../table-engines/mergetree-family/replication.md#table_engines-replication) tables is recomended do not specify parameters of engine - path in ZooKeeper and replica name. In this case will be used parameters of the configuration [default_replica_path](../../operations/server-configuration-parameters/settings.md#default_replica_path) and [default_replica_name](../../operations/server-configuration-parameters/settings.md#default_replica_name). If you want specify parameters of engine explicitly than recomended to use {uuid} macros. This is useful so that unique paths are automatically generated for each table in the ZooKeeper.
## See Also
- [system.databases](../../operations/system-tables/databases.md) system table

View File

@ -23,6 +23,7 @@ toc_title: Client Libraries
- [SeasClick C++ client](https://github.com/SeasX/SeasClick) - [SeasClick C++ client](https://github.com/SeasX/SeasClick)
- [one-ck](https://github.com/lizhichao/one-ck) - [one-ck](https://github.com/lizhichao/one-ck)
- [glushkovds/phpclickhouse-laravel](https://packagist.org/packages/glushkovds/phpclickhouse-laravel) - [glushkovds/phpclickhouse-laravel](https://packagist.org/packages/glushkovds/phpclickhouse-laravel)
- [kolya7k ClickHouse PHP extension](https://github.com//kolya7k/clickhouse-php)
- Go - Go
- [clickhouse](https://github.com/kshvakov/clickhouse/) - [clickhouse](https://github.com/kshvakov/clickhouse/)
- [go-clickhouse](https://github.com/roistat/go-clickhouse) - [go-clickhouse](https://github.com/roistat/go-clickhouse)

View File

@ -100,6 +100,11 @@ Default value: `1073741824` (1 GB).
<size_limit>1073741824</size_limit> <size_limit>1073741824</size_limit>
</core_dump> </core_dump>
``` ```
## database_atomic_delay_before_drop_table_sec {#database_atomic_delay_before_drop_table_sec}
Sets the delay before remove table data in seconds. If the query has `SYNC` modifier, this setting is ignored.
Default value: `480` (8 minute).
## default_database {#default-database} ## default_database {#default-database}
@ -125,6 +130,25 @@ Settings profiles are located in the file specified in the parameter `user_confi
<default_profile>default</default_profile> <default_profile>default</default_profile>
``` ```
## default_replica_path {#default_replica_path}
The path to the table in ZooKeeper.
**Example**
``` xml
<default_replica_path>/clickhouse/tables/{uuid}/{shard}</default_replica_path>
```
## default_replica_name {#default_replica_name}
The replica name in ZooKeeper.
**Example**
``` xml
<default_replica_name>{replica}</default_replica_name>
```
## dictionaries_config {#server_configuration_parameters-dictionaries_config} ## dictionaries_config {#server_configuration_parameters-dictionaries_config}
The path to the config file for external dictionaries. The path to the config file for external dictionaries.

View File

@ -2787,6 +2787,28 @@ Possible values:
Default value: `0`. Default value: `0`.
## database_atomic_wait_for_drop_and_detach_synchronously {#database_atomic_wait_for_drop_and_detach_synchronously}
Adds a modifier `SYNC` to all `DROP` and `DETACH` queries.
Possible values:
- 0 — Queries will be executed with delay.
- 1 — Queries will be executed without delay.
Default value: `0`.
## show_table_uuid_in_table_create_query_if_not_nil {#show_table_uuid_in_table_create_query_if_not_nil}
Sets the `SHOW TABLE` query display.
Possible values:
- 0 — The query will be displayed without table UUID.
- 1 — The query will be displayed with table UUID.
Default value: `0`.
## allow_experimental_live_view {#allow-experimental-live-view} ## allow_experimental_live_view {#allow-experimental-live-view}
Allows creation of experimental [live views](../../sql-reference/statements/create/view.md#live-view). Allows creation of experimental [live views](../../sql-reference/statements/create/view.md#live-view).

View File

@ -20,10 +20,12 @@ Columns:
When connecting to the server by `clickhouse-client`, you see the string similar to `Connected to ClickHouse server version 19.18.1 revision 54429.`. This field contains the `revision`, but not the `version` of a server. When connecting to the server by `clickhouse-client`, you see the string similar to `Connected to ClickHouse server version 19.18.1 revision 54429.`. This field contains the `revision`, but not the `version` of a server.
- `timer_type` ([Enum8](../../sql-reference/data-types/enum.md)) — Timer type: - `trace_type` ([Enum8](../../sql-reference/data-types/enum.md)) — Trace type:
- `Real` represents wall-clock time. - `Real` represents collecting stack traces by wall-clock time.
- `CPU` represents CPU time. - `CPU` represents collecting stack traces by CPU time.
- `Memory` represents collecting allocations and deallocations when memory allocation exceeds the subsequent watermark.
- `MemorySample` represents collecting random allocations and deallocations.
- `thread_number` ([UInt32](../../sql-reference/data-types/int-uint.md)) — Thread identifier. - `thread_number` ([UInt32](../../sql-reference/data-types/int-uint.md)) — Thread identifier.

View File

@ -26,7 +26,7 @@ Function:
- Uses the HyperLogLog algorithm to approximate the number of different argument values. - Uses the HyperLogLog algorithm to approximate the number of different argument values.
212 5-bit cells are used. The size of the state is slightly more than 2.5 KB. The result is not very accurate (up to ~10% error) for small data sets (<10K elements). However, the result is fairly accurate for high-cardinality data sets (10K-100M), with a maximum error of ~1.6%. Starting from 100M, the estimation error increases, and the function will return very inaccurate results for data sets with extremely high cardinality (1B+ elements). 2^12 5-bit cells are used. The size of the state is slightly more than 2.5 KB. The result is not very accurate (up to ~10% error) for small data sets (<10K elements). However, the result is fairly accurate for high-cardinality data sets (10K-100M), with a maximum error of ~1.6%. Starting from 100M, the estimation error increases, and the function will return very inaccurate results for data sets with extremely high cardinality (1B+ elements).
- Provides the determinate result (it doesnt depend on the query processing order). - Provides the determinate result (it doesnt depend on the query processing order).

View File

@ -5,13 +5,14 @@ toc_title: ATTACH
# ATTACH Statement {#attach} # ATTACH Statement {#attach}
This query is exactly the same as [CREATE](../../sql-reference/statements/create/table.md), but Attaches the table, for example, when moving a database to another server.
- Instead of the word `CREATE` it uses the word `ATTACH`. The query does not create data on the disk, but assumes that data is already in the appropriate places, and just adds information about the table to the server. After executing an `ATTACH` query, the server will know about the existence of the table.
- The query does not create data on the disk, but assumes that data is already in the appropriate places, and just adds information about the table to the server.
After executing an ATTACH query, the server will know about the existence of the table.
If the table was previously detached ([DETACH](../../sql-reference/statements/detach.md)), meaning that its structure is known, you can use shorthand without defining the structure. If the table was previously detached ([DETACH](../../sql-reference/statements/detach.md)) query, meaning that its structure is known, you can use shorthand without defining the structure.
## Syntax Forms {#syntax-forms}
### Attach Existing Table {#attach-existing-table}
``` sql ``` sql
ATTACH TABLE [IF NOT EXISTS] [db.]name [ON CLUSTER cluster] ATTACH TABLE [IF NOT EXISTS] [db.]name [ON CLUSTER cluster]
@ -21,4 +22,38 @@ This query is used when starting the server. The server stores table metadata as
If the table was detached permanently, it won't be reattached at the server start, so you need to use `ATTACH` query explicitly. If the table was detached permanently, it won't be reattached at the server start, so you need to use `ATTACH` query explicitly.
[Original article](https://clickhouse.tech/docs/en/sql-reference/statements/attach/) <!--hide--> ### Сreate New Table And Attach Data {#create-new-table-and-attach-data}
**With specify path to table data**
```sql
ATTACH TABLE name FROM 'path/to/data/' (col1 Type1, ...)
```
It creates new table with provided structure and attaches table data from provided directory in `user_files`.
**Example**
Query:
```sql
DROP TABLE IF EXISTS test;
INSERT INTO TABLE FUNCTION file('01188_attach/test/data.TSV', 'TSV', 's String, n UInt8') VALUES ('test', 42);
ATTACH TABLE test FROM '01188_attach/test' (s String, n UInt8) ENGINE = File(TSV);
SELECT * FROM test;
```
Result:
```sql
┌─s────┬──n─┐
│ test │ 42 │
└──────┴────┘
```
**With specify table UUID** (Only for `Atomic` database)
```sql
ATTACH TABLE name UUID '<uuid>' (col1 Type1, ...)
```
It creates new table with provided structure and attaches data from table with the specified UUID.

View File

@ -287,7 +287,9 @@ REPLACE TABLE myOldTable SELECT * FROM myOldTable WHERE CounterID <12345;
### Syntax ### Syntax
{CREATE [OR REPLACE]|REPLACE} TABLE [db.]table_name ``` sql
{CREATE [OR REPLACE] | REPLACE} TABLE [db.]table_name
```
All syntax forms for `CREATE` query also work for this query. `REPLACE` for a non-existent table will cause an error. All syntax forms for `CREATE` query also work for this query. `REPLACE` for a non-existent table will cause an error.

View File

@ -624,7 +624,7 @@ uniqHLL12(x[, ...])
- HyperLogLogアルゴリズムを使用して、異なる引数値の数を近似します。 - HyperLogLogアルゴリズムを使用して、異なる引数値の数を近似します。
212 5-bit cells are used. The size of the state is slightly more than 2.5 KB. The result is not very accurate (up to ~10% error) for small data sets (<10K elements). However, the result is fairly accurate for high-cardinality data sets (10K-100M), with a maximum error of ~1.6%. Starting from 100M, the estimation error increases, and the function will return very inaccurate results for data sets with extremely high cardinality (1B+ elements). 2^12 5-bit cells are used. The size of the state is slightly more than 2.5 KB. The result is not very accurate (up to ~10% error) for small data sets (<10K elements). However, the result is fairly accurate for high-cardinality data sets (10K-100M), with a maximum error of ~1.6%. Starting from 100M, the estimation error increases, and the function will return very inaccurate results for data sets with extremely high cardinality (1B+ elements).
- 決定的な結果を提供します(クエリ処理順序に依存しません)。 - 決定的な結果を提供します(クエリ処理順序に依存しません)。

View File

@ -29,3 +29,14 @@ toc_title: "Поставщики облачных услуг ClickHouse"
- cross-az масштабирование для повышения производительности и обеспечения высокой доступности - cross-az масштабирование для повышения производительности и обеспечения высокой доступности
- встроенный мониторинг и редактор SQL-запросов - встроенный мониторинг и редактор SQL-запросов
## Alibaba Cloud {#alibaba-cloud}
Управляемый облачный сервис Alibaba для ClickHouse: [китайская площадка](https://www.aliyun.com/product/clickhouse), будет доступен на международной площадке в мае 2021 года. Сервис предоставляет следующие возможности:
- надежный сервер для облачного хранилища на основе распределенной системы [Alibaba Cloud Apsara](https://www.alibabacloud.com/product/apsara-stack);
- расширяемая по запросу емкость, без переноса данных вручную;
- поддержка одноузловой и многоузловой архитектуры, архитектуры с одной или несколькими репликами, а также многоуровневого хранения cold и hot data;
- поддержка прав доступа, one-key восстановления, многоуровневая защита сети, шифрование облачного диска;
- полная интеграция с облачными системами логирования, базами данных и инструментами обработки данных;
- встроенная платформа для мониторинга и управления базами данных;
- техническая поддержка от экспертов по работе с базами данных.

View File

@ -27,7 +27,7 @@ ClickHouse - полноценная колоночная СУБД. Данные
`IColumn` предоставляет методы для общих реляционных преобразований данных, но они не отвечают всем потребностям. Например, `ColumnUInt64` не имеет метода для вычисления суммы двух столбцов, а `ColumnString` не имеет метода для запуска поиска по подстроке. Эти бесчисленные процедуры реализованы вне `IColumn`. `IColumn` предоставляет методы для общих реляционных преобразований данных, но они не отвечают всем потребностям. Например, `ColumnUInt64` не имеет метода для вычисления суммы двух столбцов, а `ColumnString` не имеет метода для запуска поиска по подстроке. Эти бесчисленные процедуры реализованы вне `IColumn`.
Различные функции на колонках могут быть реализованы обобщенным, неэффективным путем, используя `IColumn` методы для извлечения значений `Field`, или специальным путем, используя знания о внутреннем распределение данных в памяти в конкретной реализации `IColumn`. Для этого функции приводятся к конкретному типу `IColumn` и работают напрямую с его внутренним представлением. Например, в `ColumnUInt64` есть метод getData, который возвращает ссылку на внутренний массив, чтение и заполнение которого, выполняется отдельной процедурой напрямую. Фактически, мы имеем "дырявую абстракции", обеспечивающие эффективные специализации различных процедур. Различные функции на колонках могут быть реализованы обобщенным, неэффективным путем, используя `IColumn` методы для извлечения значений `Field`, или специальным путем, используя знания о внутреннем распределение данных в памяти в конкретной реализации `IColumn`. Для этого функции приводятся к конкретному типу `IColumn` и работают напрямую с его внутренним представлением. Например, в `ColumnUInt64` есть метод `getData`, который возвращает ссылку на внутренний массив, чтение и заполнение которого, выполняется отдельной процедурой напрямую. Фактически, мы имеем "дырявые абстракции", обеспечивающие эффективные специализации различных процедур.
## Типы данных (Data Types) {#data_types} ## Типы данных (Data Types) {#data_types}
@ -42,7 +42,7 @@ ClickHouse - полноценная колоночная СУБД. Данные
## Блоки (Block) {#block} ## Блоки (Block) {#block}
`Block` это контейнер, который представляет фрагмент (chunk) таблицы в памяти. Это набор троек - `(IColumn, IDataType, имя колонки)`. В процессе выполнения запроса, данные обрабатываются `Block`ами. Если у нас есть `Block`, значит у нас есть данные (в объекте `IColumn`), информация о типе (в `IDataType`), которая говорит нам, как работать с колонкой, и имя колонки (оригинальное имя колонки таблицы или служебное имя, присвоенное для получения промежуточных результатов вычислений). `Block` это контейнер, который представляет фрагмент (chunk) таблицы в памяти. Это набор троек - `(IColumn, IDataType, имя колонки)`. В процессе выполнения запроса, данные обрабатываются `Block`-ами. Если у нас есть `Block`, значит у нас есть данные (в объекте `IColumn`), информация о типе (в `IDataType`), которая говорит нам, как работать с колонкой, и имя колонки (оригинальное имя колонки таблицы или служебное имя, присвоенное для получения промежуточных результатов вычислений).
При вычислении некоторой функции на колонках в блоке мы добавляем еще одну колонку с результатами в блок, не трогая колонки аргументов функции, потому что операции иммутабельные. Позже ненужные колонки могут быть удалены из блока, но не модифицированы. Это удобно для устранения общих подвыражений. При вычислении некоторой функции на колонках в блоке мы добавляем еще одну колонку с результатами в блок, не трогая колонки аргументов функции, потому что операции иммутабельные. Позже ненужные колонки могут быть удалены из блока, но не модифицированы. Это удобно для устранения общих подвыражений.
@ -162,9 +162,9 @@ ClickHouse имеет сильную типизацию, поэтому нет
Сервера в кластере в основном независимы. Вы можете создать `Распределенную` (`Distributed`) таблицу на одном или всех серверах в кластере. Такая таблица сама по себе не хранит данные - она только предоставляет возможность "просмотра" всех локальных таблиц на нескольких узлах кластера. При выполнении `SELECT` распределенная таблица переписывает запрос, выбирает удаленные узлы в соответствии с настройками балансировки нагрузки и отправляет им запрос. Распределенная таблица просит удаленные сервера обработать запрос до той стадии, когда промежуточные результаты с разных серверов могут быть объединены. Затем он получает промежуточные результаты и объединяет их. Распределенная таблица пытается возложить как можно больше работы на удаленные серверы и сократить объем промежуточных данных, передаваемых по сети. Сервера в кластере в основном независимы. Вы можете создать `Распределенную` (`Distributed`) таблицу на одном или всех серверах в кластере. Такая таблица сама по себе не хранит данные - она только предоставляет возможность "просмотра" всех локальных таблиц на нескольких узлах кластера. При выполнении `SELECT` распределенная таблица переписывает запрос, выбирает удаленные узлы в соответствии с настройками балансировки нагрузки и отправляет им запрос. Распределенная таблица просит удаленные сервера обработать запрос до той стадии, когда промежуточные результаты с разных серверов могут быть объединены. Затем он получает промежуточные результаты и объединяет их. Распределенная таблица пытается возложить как можно больше работы на удаленные серверы и сократить объем промежуточных данных, передаваемых по сети.
Ситуация усложняется, при использовании подзапросы в случае IN или JOIN, когда каждый из них использует таблицу `Distributed`. Есть разные стратегии для выполнения таких запросов. Ситуация усложняется, при использовании подзапросов в случае `IN` или `JOIN`, когда каждый из них использует таблицу `Distributed`. Есть разные стратегии для выполнения таких запросов.
Глобального плана выполнения распределенных запросов не существует. Каждый узел имеет собственный локальный план для своей части работы. У нас есть простое однонаправленное выполнение распределенных запросов: мы отправляем запросы на удаленные узлы и затем объединяем результаты. Но это невозможно для сложных запросов GROUP BY высокой кардинальности или запросов с большим числом временных данных в JOIN: в таких случаях нам необходимо перераспределить («reshuffle») данные между серверами, что требует дополнительной координации. ClickHouse не поддерживает выполнение запросов такого рода, и нам нужно работать над этим. Глобального плана выполнения распределенных запросов не существует. Каждый узел имеет собственный локальный план для своей части работы. У нас есть простое однонаправленное выполнение распределенных запросов: мы отправляем запросы на удаленные узлы и затем объединяем результаты. Но это невозможно для сложных запросов `GROUP BY` высокой кардинальности или запросов с большим числом временных данных в `JOIN`: в таких случаях нам необходимо перераспределить («reshuffle») данные между серверами, что требует дополнительной координации. ClickHouse не поддерживает выполнение запросов такого рода, и нам нужно работать над этим.
## Merge Tree {#merge-tree} ## Merge Tree {#merge-tree}

View File

@ -7,15 +7,15 @@ toc_title: "Инструкция для разработчиков"
Сборка ClickHouse поддерживается на Linux, FreeBSD, Mac OS X. Сборка ClickHouse поддерживается на Linux, FreeBSD, Mac OS X.
# Если вы используете Windows {#esli-vy-ispolzuete-windows} ## Если вы используете Windows {#esli-vy-ispolzuete-windows}
Если вы используете Windows, вам потребуется создать виртуальную машину с Ubuntu. Для работы с виртуальной машиной, установите VirtualBox. Скачать Ubuntu можно на сайте: https://www.ubuntu.com/#download Создайте виртуальную машину из полученного образа. Выделите для неё не менее 4 GB оперативной памяти. Для запуска терминала в Ubuntu, найдите в меню программу со словом terminal (gnome-terminal, konsole или что-то в этом роде) или нажмите Ctrl+Alt+T. Если вы используете Windows, вам потребуется создать виртуальную машину с Ubuntu. Для работы с виртуальной машиной, установите VirtualBox. Скачать Ubuntu можно на сайте: https://www.ubuntu.com/#download Создайте виртуальную машину из полученного образа. Выделите для неё не менее 4 GB оперативной памяти. Для запуска терминала в Ubuntu, найдите в меню программу со словом terminal (gnome-terminal, konsole или что-то в этом роде) или нажмите Ctrl+Alt+T.
# Если вы используете 32-битную систему {#esli-vy-ispolzuete-32-bitnuiu-sistemu} ## Если вы используете 32-битную систему {#esli-vy-ispolzuete-32-bitnuiu-sistemu}
ClickHouse не работает и не собирается на 32-битных системах. Получите доступ к 64-битной системе и продолжайте. ClickHouse не работает и не собирается на 32-битных системах. Получите доступ к 64-битной системе и продолжайте.
# Создание репозитория на GitHub {#sozdanie-repozitoriia-na-github} ## Создание репозитория на GitHub {#sozdanie-repozitoriia-na-github}
Для работы с репозиторием ClickHouse, вам потребуется аккаунт на GitHub. Наверное, он у вас уже есть. Для работы с репозиторием ClickHouse, вам потребуется аккаунт на GitHub. Наверное, он у вас уже есть.
@ -34,7 +34,7 @@ ClickHouse не работает и не собирается на 32-битны
Подробное руководство по использованию Git: https://git-scm.com/book/ru/v2 Подробное руководство по использованию Git: https://git-scm.com/book/ru/v2
# Клонирование репозитория на рабочую машину {#klonirovanie-repozitoriia-na-rabochuiu-mashinu} ## Клонирование репозитория на рабочую машину {#klonirovanie-repozitoriia-na-rabochuiu-mashinu}
Затем вам потребуется загрузить исходники для работы на свой компьютер. Это называется «клонирование репозитория», потому что создаёт на вашем компьютере локальную копию репозитория, с которой вы будете работать. Затем вам потребуется загрузить исходники для работы на свой компьютер. Это называется «клонирование репозитория», потому что создаёт на вашем компьютере локальную копию репозитория, с которой вы будете работать.
@ -78,7 +78,7 @@ ClickHouse не работает и не собирается на 32-битны
После этого, вы сможете добавлять в свой репозиторий обновления из репозитория Яндекса с помощью команды `git pull upstream master`. После этого, вы сможете добавлять в свой репозиторий обновления из репозитория Яндекса с помощью команды `git pull upstream master`.
## Работа с сабмодулями Git {#rabota-s-sabmoduliami-git} ### Работа с сабмодулями Git {#rabota-s-sabmoduliami-git}
Работа с сабмодулями git может быть достаточно болезненной. Следующие команды позволят содержать их в порядке: Работа с сабмодулями git может быть достаточно болезненной. Следующие команды позволят содержать их в порядке:
@ -110,7 +110,7 @@ The next commands would help you to reset all submodules to the initial state (!
git submodule foreach git submodule foreach git reset --hard git submodule foreach git submodule foreach git reset --hard
git submodule foreach git submodule foreach git clean -xfd git submodule foreach git submodule foreach git clean -xfd
# Система сборки {#sistema-sborki} ## Система сборки {#sistema-sborki}
ClickHouse использует систему сборки CMake и Ninja. ClickHouse использует систему сборки CMake и Ninja.
@ -130,11 +130,11 @@ Ninja - система запуска сборочных задач.
Проверьте версию CMake: `cmake --version`. Если версия меньше 3.3, то установите новую версию с сайта https://cmake.org/download/ Проверьте версию CMake: `cmake --version`. Если версия меньше 3.3, то установите новую версию с сайта https://cmake.org/download/
# Необязательные внешние библиотеки {#neobiazatelnye-vneshnie-biblioteki} ## Необязательные внешние библиотеки {#neobiazatelnye-vneshnie-biblioteki}
ClickHouse использует для сборки некоторое количество внешних библиотек. Но ни одну из них не требуется отдельно устанавливать, так как они собираются вместе с ClickHouse, из исходников, которые расположены в submodules. Посмотреть набор этих библиотек можно в директории contrib. ClickHouse использует для сборки некоторое количество внешних библиотек. Но ни одну из них не требуется отдельно устанавливать, так как они собираются вместе с ClickHouse, из исходников, которые расположены в submodules. Посмотреть набор этих библиотек можно в директории contrib.
# Компилятор C++ {#kompiliator-c} ## Компилятор C++ {#kompiliator-c}
В качестве компилятора C++ поддерживается GCC начиная с версии 9 или Clang начиная с версии 8. В качестве компилятора C++ поддерживается GCC начиная с версии 9 или Clang начиная с версии 8.
@ -148,7 +148,7 @@ ClickHouse использует для сборки некоторое коли
Если вы решили использовать Clang, вы также можете установить `libc++` и `lld`, если вы знаете, что это такое. При желании, установите `ccache`. Если вы решили использовать Clang, вы также можете установить `libc++` и `lld`, если вы знаете, что это такое. При желании, установите `ccache`.
# Процесс сборки {#protsess-sborki} ## Процесс сборки {#protsess-sborki}
Теперь вы готовы к сборке ClickHouse. Для размещения собранных файлов, рекомендуется создать отдельную директорию build внутри директории ClickHouse: Теперь вы готовы к сборке ClickHouse. Для размещения собранных файлов, рекомендуется создать отдельную директорию build внутри директории ClickHouse:
@ -206,7 +206,7 @@ Mac OS X:
ls -l programs/clickhouse ls -l programs/clickhouse
# Запуск собранной версии ClickHouse {#zapusk-sobrannoi-versii-clickhouse} ## Запуск собранной версии ClickHouse {#zapusk-sobrannoi-versii-clickhouse}
Для запуска сервера из под текущего пользователя, с выводом логов в терминал и с использованием примеров конфигурационных файлов, расположенных в исходниках, перейдите в директорию `ClickHouse/programs/server/` (эта директория находится не в директории build) и выполните: Для запуска сервера из под текущего пользователя, с выводом логов в терминал и с использованием примеров конфигурационных файлов, расположенных в исходниках, перейдите в директорию `ClickHouse/programs/server/` (эта директория находится не в директории build) и выполните:
@ -233,7 +233,7 @@ Mac OS X:
sudo service clickhouse-server stop sudo service clickhouse-server stop
sudo -u clickhouse ClickHouse/build/programs/clickhouse server --config-file /etc/clickhouse-server/config.xml sudo -u clickhouse ClickHouse/build/programs/clickhouse server --config-file /etc/clickhouse-server/config.xml
# Среда разработки {#sreda-razrabotki} ## Среда разработки {#sreda-razrabotki}
Если вы не знаете, какую среду разработки использовать, то рекомендуется использовать CLion. CLion является платным ПО, но его можно использовать бесплатно в течение пробного периода. Также он бесплатен для учащихся. CLion можно использовать как под Linux, так и под Mac OS X. Если вы не знаете, какую среду разработки использовать, то рекомендуется использовать CLion. CLion является платным ПО, но его можно использовать бесплатно в течение пробного периода. Также он бесплатен для учащихся. CLion можно использовать как под Linux, так и под Mac OS X.
@ -243,7 +243,7 @@ Mac OS X:
На всякий случай заметим, что CLion самостоятельно создаёт свою build директорию, самостоятельно выбирает тип сборки debug по-умолчанию, для конфигурации использует встроенную в CLion версию CMake вместо установленного вами, а для запуска задач использует make вместо ninja. Это нормально, просто имейте это ввиду, чтобы не возникало путаницы. На всякий случай заметим, что CLion самостоятельно создаёт свою build директорию, самостоятельно выбирает тип сборки debug по-умолчанию, для конфигурации использует встроенную в CLion версию CMake вместо установленного вами, а для запуска задач использует make вместо ninja. Это нормально, просто имейте это ввиду, чтобы не возникало путаницы.
# Написание кода {#napisanie-koda} ## Написание кода {#napisanie-koda}
Описание архитектуры ClickHouse: https://clickhouse.tech/docs/ru/development/architecture/ Описание архитектуры ClickHouse: https://clickhouse.tech/docs/ru/development/architecture/
@ -253,7 +253,7 @@ Mac OS X:
Список задач: https://github.com/ClickHouse/ClickHouse/issues?q=is%3Aopen+is%3Aissue+label%3A%22easy+task%22 Список задач: https://github.com/ClickHouse/ClickHouse/issues?q=is%3Aopen+is%3Aissue+label%3A%22easy+task%22
# Тестовые данные {#testovye-dannye} ## Тестовые данные {#testovye-dannye}
Разработка ClickHouse часто требует загрузки реалистичных наборов данных. Особенно это важно для тестирования производительности. Специально для вас мы подготовили набор данных, представляющий собой анонимизированные данные Яндекс.Метрики. Загрузка этих данных потребует ещё 3 GB места на диске. Для выполнения большинства задач разработки, загружать эти данные не обязательно. Разработка ClickHouse часто требует загрузки реалистичных наборов данных. Особенно это важно для тестирования производительности. Специально для вас мы подготовили набор данных, представляющий собой анонимизированные данные Яндекс.Метрики. Загрузка этих данных потребует ещё 3 GB места на диске. Для выполнения большинства задач разработки, загружать эти данные не обязательно.
@ -274,7 +274,7 @@ Mac OS X:
clickhouse-client --max_insert_block_size 100000 --query "INSERT INTO test.hits FORMAT TSV" < hits_v1.tsv clickhouse-client --max_insert_block_size 100000 --query "INSERT INTO test.hits FORMAT TSV" < hits_v1.tsv
clickhouse-client --max_insert_block_size 100000 --query "INSERT INTO test.visits FORMAT TSV" < visits_v1.tsv clickhouse-client --max_insert_block_size 100000 --query "INSERT INTO test.visits FORMAT TSV" < visits_v1.tsv
# Создание Pull Request {#sozdanie-pull-request} ## Создание Pull Request {#sozdanie-pull-request}
Откройте свой форк репозитория в интерфейсе GitHub. Если вы вели разработку в бранче, выберите этот бранч. На странице будет доступна кнопка «Pull request». По сути, это означает «создать заявку на принятие моих изменений в основной репозиторий». Откройте свой форк репозитория в интерфейсе GitHub. Если вы вели разработку в бранче, выберите этот бранч. На странице будет доступна кнопка «Pull request». По сути, это означает «создать заявку на принятие моих изменений в основной репозиторий».

View File

@ -3,15 +3,52 @@ toc_priority: 32
toc_title: Atomic toc_title: Atomic
--- ---
# Atomic {#atomic} # Atomic {#atomic}
Поддерживает неблокирующие запросы `DROP` и `RENAME TABLE` и запросы `EXCHANGE TABLES t1 AND t2`. Движок `Atomic` используется по умолчанию. Поддерживает неблокирующие запросы [DROP TABLE](#drop-detach-table) и [RENAME TABLE](#rename-table) и атомарные запросы [EXCHANGE TABLES t1 AND t](#exchange-tables). Движок `Atomic` используется по умолчанию.
## Создание БД {#creating-a-database} ## Создание БД {#creating-a-database}
```sql ``` sql
CREATE DATABASE test ENGINE = Atomic; CREATE DATABASE test[ ENGINE = Atomic];
``` ```
[Оригинальная статья](https://clickhouse.tech/docs/ru/engines/database-engines/atomic/) <!--hide--> ## Особенности и рекомендации {#specifics-and-recommendations}
### UUID {#table-uuid}
Каждая таблица в базе данных `Atomic` имеет уникальный [UUID](../../sql-reference/data-types/uuid.md) и хранит данные в папке `/clickhouse_path/store/xxx/xxxyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/`, где `xxxyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy` - это UUID таблицы.
Обычно UUID генерируется автоматически, но пользователь также может явно указать UUID в момент создания таблицы (однако это не рекомендуется). Для отображения UUID в запросе `SHOW CREATE` вы можете использовать настройку [show_table_uuid_in_table_create_query_if_not_nil](../../operations/settings/settings.md#show_table_uuid_in_table_create_query_if_not_nil). Результат выполнения в таком случае будет иметь вид:
```sql
CREATE TABLE name UUID '28f1c61c-2970-457a-bffe-454156ddcfef' (n UInt64) ENGINE = ...;
```
### RENAME TABLE {#rename-table}
Запросы `RENAME` выполняются без изменения UUID и перемещения табличных данных. Эти запросы не ожидают завершения использующих таблицу запросов и будут выполнены мгновенно.
### DROP/DETACH TABLE {#drop-detach-table}
При выполнении запроса `DROP TABLE` никакие данные не удаляются. Таблица помечается как удаленная, метаданные перемещаются в папку `/clickhouse_path/metadata_dropped/` и база данных уведомляет фоновый поток. Задержка перед окончательным удалением данных задается настройкой [database_atomic_delay_before_drop_table_sec](../../operations/server-configuration-parameters/settings.md#database_atomic_delay_before_drop_table_sec).
Вы можете задать синхронный режим, определяя модификатор `SYNC`. Используйте для этого настройку [database_atomic_wait_for_drop_and_detach_synchronously](../../operations/settings/settings.md#database_atomic_wait_for_drop_and_detach_synchronously). В этом случае запрос `DROP` ждет завершения `SELECT`, `INSERT` и других запросов, которые используют таблицу. Таблица будет фактически удалена, когда она не будет использоваться.
### EXCHANGE TABLES {#exchange-tables}
Запрос `EXCHANGE` меняет местами две таблицы атомарно. Вместо неатомарной операции:
```sql
RENAME TABLE new_table TO tmp, old_table TO new_table, tmp TO old_table;
```
вы можете использовать один атомарный запрос:
``` sql
EXCHANGE TABLES new_table AND old_table;
```
### ReplicatedMergeTree in Atomic Database {#replicatedmergetree-in-atomic-database}
Для таблиц [ReplicatedMergeTree](../table-engines/mergetree-family/replication.md#table_engines-replication) рекомендуется не указывать параметры движка - путь в ZooKeeper и имя реплики. В этом случае будут использоваться параметры конфигурации: [default_replica_path](../../operations/server-configuration-parameters/settings.md#default_replica_path) и [default_replica_name](../../operations/server-configuration-parameters/settings.md#default_replica_name). Если вы хотите определить параметры движка явно, рекомендуется использовать макрос {uuid}. Это удобно, так как автоматически генерируются уникальные пути для каждой таблицы в ZooKeeper.
## Смотрите также
- Системная таблица [system.databases](../../operations/system-tables/databases.md).

View File

@ -101,6 +101,12 @@ ClickHouse проверяет условия для `min_part_size` и `min_part
</core_dump> </core_dump>
``` ```
## database_atomic_delay_before_drop_table_sec {#database_atomic_delay_before_drop_table_sec}
Устанавливает задержку перед удалением табличных данных, в секундах. Если запрос имеет идентификатор `SYNC`, эта настройка игнорируется.
Значение по умолчанию: `480` (8 минут).
## default\_database {#default-database} ## default\_database {#default-database}
База данных по умолчанию. База данных по умолчанию.

View File

@ -2690,6 +2690,28 @@ SELECT * FROM test2;
Значение по умолчанию: `0`. Значение по умолчанию: `0`.
## database_atomic_wait_for_drop_and_detach_synchronously {#database_atomic_wait_for_drop_and_detach_synchronously}
Добавляет модификатор `SYNC` ко всем запросам `DROP` и `DETACH`.
Возможные значения:
- 0 — Запросы будут выполняться с задержкой.
- 1 — Запросы будут выполняться без задержки.
Значение по умолчанию: `0`.
## show_table_uuid_in_table_create_query_if_not_nil {#show_table_uuid_in_table_create_query_if_not_nil}
Устанавливает отображение запроса `SHOW TABLE`.
Возможные значения:
- 0 — Запрос будет отображаться без UUID таблицы.
- 1 — Запрос будет отображаться с UUID таблицы.
Значение по умолчанию: `0`.
## allow_experimental_live_view {#allow-experimental-live-view} ## allow_experimental_live_view {#allow-experimental-live-view}
Включает экспериментальную возможность использования [LIVE-представлений](../../sql-reference/statements/create/view.md#live-view). Включает экспериментальную возможность использования [LIVE-представлений](../../sql-reference/statements/create/view.md#live-view).

View File

@ -26,7 +26,7 @@ uniqHLL12(x[, ...])
- Использует алгоритм HyperLogLog для аппроксимации числа различных значений аргументов. - Использует алгоритм HyperLogLog для аппроксимации числа различных значений аргументов.
Используется 212 5-битовых ячеек. Размер состояния чуть больше 2.5 КБ. Результат не точный (ошибка до ~10%) для небольших множеств (<10K элементов). Однако для множеств большой кардинальности (10K - 100M) результат довольно точен (ошибка до ~1.6%). Начиная с 100M ошибка оценки будет только расти и для множеств огромной кардинальности (1B+ элементов) функция возвращает результат с очень большой неточностью. Используется 2^12 5-битовых ячеек. Размер состояния чуть больше 2.5 КБ. Результат не точный (ошибка до ~10%) для небольших множеств (<10K элементов). Однако для множеств большой кардинальности (10K - 100M) результат довольно точен (ошибка до ~1.6%). Начиная с 100M ошибка оценки будет только расти и для множеств огромной кардинальности (1B+ элементов) функция возвращает результат с очень большой неточностью.
- Результат детерминирован (не зависит от порядка выполнения запроса). - Результат детерминирован (не зависит от порядка выполнения запроса).

View File

@ -12,10 +12,10 @@ toc_title: USER
``` sql ``` sql
ALTER USER [IF EXISTS] name1 [ON CLUSTER cluster_name1] [RENAME TO new_name1] ALTER USER [IF EXISTS] name1 [ON CLUSTER cluster_name1] [RENAME TO new_name1]
[, name2 [ON CLUSTER cluster_name2] [RENAME TO new_name2] ...] [, name2 [ON CLUSTER cluster_name2] [RENAME TO new_name2] ...]
[IDENTIFIED [WITH {PLAINTEXT_PASSWORD|SHA256_PASSWORD|DOUBLE_SHA1_PASSWORD}] BY {'password'|'hash'}] [NOT IDENTIFIED | IDENTIFIED {[WITH {no_password | plaintext_password | sha256_password | sha256_hash | double_sha1_password | double_sha1_hash}] BY {'password' | 'hash'}} | {WITH ldap SERVER 'server_name'} | {WITH kerberos [REALM 'realm']}]
[[ADD|DROP] HOST {LOCAL | NAME 'name' | REGEXP 'name_regexp' | IP 'address' | LIKE 'pattern'} [,...] | ANY | NONE] [[ADD | DROP] HOST {LOCAL | NAME 'name' | REGEXP 'name_regexp' | IP 'address' | LIKE 'pattern'} [,...] | ANY | NONE]
[DEFAULT ROLE role [,...] | ALL | ALL EXCEPT role [,...] ] [DEFAULT ROLE role [,...] | ALL | ALL EXCEPT role [,...] ]
[SETTINGS variable [= value] [MIN [=] min_value] [MAX [=] max_value] [READONLY|WRITABLE] | PROFILE 'profile_name'] [,...] [SETTINGS variable [= value] [MIN [=] min_value] [MAX [=] max_value] [READONLY | WRITABLE] | PROFILE 'profile_name'] [,...]
``` ```
Для выполнения `ALTER USER` необходима привилегия [ALTER USER](../grant.md#grant-access-management). Для выполнения `ALTER USER` необходима привилегия [ALTER USER](../grant.md#grant-access-management).

View File

@ -5,12 +5,14 @@ toc_title: ATTACH
# ATTACH Statement {#attach} # ATTACH Statement {#attach}
Запрос полностью аналогичен запросу `CREATE`, но: Выполняет подключение таблицы, например, при перемещении базы данных на другой сервер.
- вместо слова `CREATE` используется слово `ATTACH`; Запрос не создаёт данные на диске, а предполагает, что данные уже лежат в соответствующих местах, и всего лишь добавляет информацию о таблице на сервер. После выполнения запроса `ATTACH` сервер будет знать о существовании таблицы.
- запрос не создаёт данные на диске, а предполагает, что данные уже лежат в соответствующих местах, и всего лишь добавляет информацию о таблице на сервер. После выполнения запроса `ATTACH` сервер будет знать о существовании таблицы.
Если таблица перед этим была отключена ([DETACH](../../sql-reference/statements/detach.md)), т.е. её структура известна, можно использовать сокращенную форму записи без определения структуры. Если таблица перед этим была отключена при помощи ([DETACH](../../sql-reference/statements/detach.md)), т.е. её структура известна, можно использовать сокращенную форму записи без определения структуры.
## Варианты синтаксиса {#syntax-forms}
### Присоединение существующей таблицы {#attach-existing-table}
``` sql ``` sql
ATTACH TABLE [IF NOT EXISTS] [db.]name [ON CLUSTER cluster] ATTACH TABLE [IF NOT EXISTS] [db.]name [ON CLUSTER cluster]
@ -20,4 +22,38 @@ ATTACH TABLE [IF NOT EXISTS] [db.]name [ON CLUSTER cluster]
Если таблица была отключена перманентно, она не будет подключена обратно во время старта сервера, так что нужно явно использовать запрос `ATTACH`, чтобы подключить ее. Если таблица была отключена перманентно, она не будет подключена обратно во время старта сервера, так что нужно явно использовать запрос `ATTACH`, чтобы подключить ее.
### Создание новой таблицы и присоединение данных {#create-new-table-and-attach-data}
**С указанием пути к табличным данным**
```sql
ATTACH TABLE name FROM 'path/to/data/' (col1 Type1, ...)
```
Cоздает новую таблицу с указанной структурой и присоединяет табличные данные из соответствующего каталога в `user_files`.
**Пример**
Запрос:
```sql
DROP TABLE IF EXISTS test;
INSERT INTO TABLE FUNCTION file('01188_attach/test/data.TSV', 'TSV', 's String, n UInt8') VALUES ('test', 42);
ATTACH TABLE test FROM '01188_attach/test' (s String, n UInt8) ENGINE = File(TSV);
SELECT * FROM test;
```
Результат:
```sql
┌─s────┬──n─┐
│ test │ 42 │
└──────┴────┘
```
**С указанием UUID таблицы** (Только для баз данных `Atomic`)
```sql
ATTACH TABLE name UUID '<uuid>' (col1 Type1, ...)
```
Cоздает новую таблицу с указанной структурой и присоединяет данные из таблицы с указанным UUID.

View File

@ -9,15 +9,17 @@ toc_title: "Пользователь"
Синтаксис: Синтаксис:
```sql ``` sql
CREATE USER [IF NOT EXISTS | OR REPLACE] name1 [ON CLUSTER cluster_name1] CREATE USER [IF NOT EXISTS | OR REPLACE] name1 [ON CLUSTER cluster_name1]
[, name2 [ON CLUSTER cluster_name2] ...] [, name2 [ON CLUSTER cluster_name2] ...]
[IDENTIFIED [WITH {NO_PASSWORD|PLAINTEXT_PASSWORD|SHA256_PASSWORD|SHA256_HASH|DOUBLE_SHA1_PASSWORD|DOUBLE_SHA1_HASH}] BY {'password'|'hash'}] [NOT IDENTIFIED | IDENTIFIED {[WITH {no_password | plaintext_password | sha256_password | sha256_hash | double_sha1_password | double_sha1_hash}] BY {'password' | 'hash'}} | {WITH ldap SERVER 'server_name'} | {WITH kerberos [REALM 'realm']}]
[HOST {LOCAL | NAME 'name' | REGEXP 'name_regexp' | IP 'address' | LIKE 'pattern'} [,...] | ANY | NONE] [HOST {LOCAL | NAME 'name' | REGEXP 'name_regexp' | IP 'address' | LIKE 'pattern'} [,...] | ANY | NONE]
[DEFAULT ROLE role [,...]] [DEFAULT ROLE role [,...]]
[SETTINGS variable [= value] [MIN [=] min_value] [MAX [=] max_value] [READONLY|WRITABLE] | PROFILE 'profile_name'] [,...] [SETTINGS variable [= value] [MIN [=] min_value] [MAX [=] max_value] [READONLY | WRITABLE] | PROFILE 'profile_name'] [,...]
``` ```
`ON CLUSTER` позволяет создавать пользователей в кластере, см. [Распределенные DDL](../../../sql-reference/distributed-ddl.md).
## Идентификация ## Идентификация
Существует несколько способов идентификации пользователя: Существует несколько способов идентификации пользователя:
@ -28,6 +30,8 @@ CREATE USER [IF NOT EXISTS | OR REPLACE] name1 [ON CLUSTER cluster_name1]
- `IDENTIFIED WITH sha256_hash BY 'hash'` - `IDENTIFIED WITH sha256_hash BY 'hash'`
- `IDENTIFIED WITH double_sha1_password BY 'qwerty'` - `IDENTIFIED WITH double_sha1_password BY 'qwerty'`
- `IDENTIFIED WITH double_sha1_hash BY 'hash'` - `IDENTIFIED WITH double_sha1_hash BY 'hash'`
- `IDENTIFIED WITH ldap SERVER 'server_name'`
- `IDENTIFIED WITH kerberos` or `IDENTIFIED WITH kerberos REALM 'realm'`
## Пользовательский хост ## Пользовательский хост

View File

@ -527,7 +527,10 @@ private:
std::cerr << std::fixed << std::setprecision(3); std::cerr << std::fixed << std::setprecision(3);
if (is_interactive) if (is_interactive)
{
clearTerminal();
showClientVersion(); showClientVersion();
}
is_default_format = !config().has("vertical") && !config().has("format"); is_default_format = !config().has("vertical") && !config().has("format");
if (config().has("vertical")) if (config().has("vertical"))
@ -2467,6 +2470,17 @@ private:
std::cout << DBMS_NAME << " client version " << VERSION_STRING << VERSION_OFFICIAL << "." << std::endl; std::cout << DBMS_NAME << " client version " << VERSION_STRING << VERSION_OFFICIAL << "." << std::endl;
} }
static void clearTerminal()
{
/// Clear from cursor until end of screen.
/// It is needed if garbage is left in terminal.
/// Show cursor. It can be left hidden by invocation of previous programs.
/// A test for this feature: perl -e 'print "x"x100000'; echo -ne '\033[0;0H\033[?25l'; clickhouse-client
std::cout <<
"\033[0J"
"\033[?25h";
}
public: public:
void init(int argc, char ** argv) void init(int argc, char ** argv)
{ {

View File

@ -986,7 +986,7 @@ int Server::main(const std::vector<std::string> & /*args*/)
/// ///
/// Look at compiler-rt/lib/sanitizer_common/sanitizer_stacktrace.h /// Look at compiler-rt/lib/sanitizer_common/sanitizer_stacktrace.h
/// ///
#if USE_UNWIND && !WITH_COVERAGE && !defined(SANITIZER) #if USE_UNWIND && !WITH_COVERAGE && !defined(SANITIZER) && defined(__x86_64__)
/// Profilers cannot work reliably with any other libunwind or without PHDR cache. /// Profilers cannot work reliably with any other libunwind or without PHDR cache.
if (hasPHDRCache()) if (hasPHDRCache())
{ {
@ -1023,6 +1023,10 @@ int Server::main(const std::vector<std::string> & /*args*/)
" when two different stack unwinding methods will interfere with each other."); " when two different stack unwinding methods will interfere with each other.");
#endif #endif
#if !defined(__x86_64__)
LOG_INFO(log, "Query Profiler is only tested on x86_64. It also known to not work under qemu-user.");
#endif
if (!hasPHDRCache()) if (!hasPHDRCache())
LOG_INFO(log, "Query Profiler and TraceCollector are disabled because they require PHDR cache to be created" LOG_INFO(log, "Query Profiler and TraceCollector are disabled because they require PHDR cache to be created"
" (otherwise the function 'dl_iterate_phdr' is not lock free and not async-signal safe)."); " (otherwise the function 'dl_iterate_phdr' is not lock free and not async-signal safe).");

View File

@ -121,7 +121,7 @@ struct QuantileExact : QuantileExactBase<Value, QuantileExact<Value>>
/// QuantileExactExclusive is equivalent to Excel PERCENTILE.EXC, R-6, SAS-4, SciPy-(0,0) /// QuantileExactExclusive is equivalent to Excel PERCENTILE.EXC, R-6, SAS-4, SciPy-(0,0)
template <typename Value> template <typename Value>
/// There is no virtual-like functions. So we don't inherit from QuantileExactBase. /// There are no virtual-like functions. So we don't inherit from QuantileExactBase.
struct QuantileExactExclusive : public QuantileExact<Value> struct QuantileExactExclusive : public QuantileExact<Value>
{ {
using QuantileExact<Value>::array; using QuantileExact<Value>::array;
@ -189,7 +189,7 @@ struct QuantileExactExclusive : public QuantileExact<Value>
/// QuantileExactInclusive is equivalent to Excel PERCENTILE and PERCENTILE.INC, R-7, SciPy-(1,1) /// QuantileExactInclusive is equivalent to Excel PERCENTILE and PERCENTILE.INC, R-7, SciPy-(1,1)
template <typename Value> template <typename Value>
/// There is no virtual-like functions. So we don't inherit from QuantileExactBase. /// There are no virtual-like functions. So we don't inherit from QuantileExactBase.
struct QuantileExactInclusive : public QuantileExact<Value> struct QuantileExactInclusive : public QuantileExact<Value>
{ {
using QuantileExact<Value>::array; using QuantileExact<Value>::array;

View File

@ -375,11 +375,9 @@ if (ZSTD_LIBRARY)
endif () endif ()
endif() endif()
set (LZMA_LIBRARY liblzma) if (XZ_LIBRARY)
set (LZMA_INCLUDE_DIR ${ClickHouse_SOURCE_DIR}/contrib/xz/src/liblzma/api) target_link_libraries (clickhouse_common_io PUBLIC ${XZ_LIBRARY})
if (LZMA_LIBRARY) target_include_directories (clickhouse_common_io SYSTEM BEFORE PUBLIC ${XZ_INCLUDE_DIR})
target_link_libraries (clickhouse_common_io PUBLIC ${LZMA_LIBRARY})
target_include_directories (clickhouse_common_io SYSTEM BEFORE PUBLIC ${LZMA_INCLUDE_DIR})
endif() endif()
if (USE_ICU) if (USE_ICU)

View File

@ -59,13 +59,16 @@ public:
StringRef serializeValueIntoArena(size_t /*n*/, Arena & arena, char const *& begin) const override StringRef serializeValueIntoArena(size_t /*n*/, Arena & arena, char const *& begin) const override
{ {
return { arena.allocContinue(0, begin), 0 }; /// Has to put one useless byte into Arena, because serialization into zero number of bytes is ambiguous.
char * res = arena.allocContinue(1, begin);
*res = 0;
return { res, 1 };
} }
const char * deserializeAndInsertFromArena(const char * pos) override const char * deserializeAndInsertFromArena(const char * pos) override
{ {
++s; ++s;
return pos; return pos + 1;
} }
const char * skipSerializedInArena(const char * pos) const override const char * skipSerializedInArena(const char * pos) const override

View File

@ -60,7 +60,7 @@ void Epoll::remove(int fd)
size_t Epoll::getManyReady(int max_events, epoll_event * events_out, bool blocking) const size_t Epoll::getManyReady(int max_events, epoll_event * events_out, bool blocking) const
{ {
if (events_count == 0) if (events_count == 0)
throw Exception("There is no events in epoll", ErrorCodes::LOGICAL_ERROR); throw Exception("There are no events in epoll", ErrorCodes::LOGICAL_ERROR);
int ready_size; int ready_size;
int timeout = blocking ? -1 : 0; int timeout = blocking ? -1 : 0;

View File

@ -547,6 +547,7 @@
M(577, INVALID_SHARD_ID) \ M(577, INVALID_SHARD_ID) \
M(578, INVALID_FORMAT_INSERT_QUERY_WITH_DATA) \ M(578, INVALID_FORMAT_INSERT_QUERY_WITH_DATA) \
M(579, INCORRECT_PART_TYPE) \ M(579, INCORRECT_PART_TYPE) \
M(580, CANNOT_SET_ROUNDING_MODE) \
\ \
M(998, POSTGRESQL_CONNECTION_FAILURE) \ M(998, POSTGRESQL_CONNECTION_FAILURE) \
M(999, KEEPER_EXCEPTION) \ M(999, KEEPER_EXCEPTION) \

View File

@ -150,6 +150,13 @@ void KeeperServer::putRequest(const KeeperStorage::RequestForSession & request_f
int64_t KeeperServer::getSessionID(int64_t session_timeout_ms) int64_t KeeperServer::getSessionID(int64_t session_timeout_ms)
{ {
/// Just some sanity check. We don't want to make a lot of clients wait with lock.
if (active_session_id_requests > 10)
throw Exception(ErrorCodes::RAFT_ERROR, "Too many concurrent SessionID requests already in flight");
++active_session_id_requests;
SCOPE_EXIT({ --active_session_id_requests; });
auto entry = nuraft::buffer::alloc(sizeof(int64_t)); auto entry = nuraft::buffer::alloc(sizeof(int64_t));
/// Just special session request /// Just special session request
nuraft::buffer_serializer bs(entry); nuraft::buffer_serializer bs(entry);

View File

@ -34,6 +34,7 @@ private:
std::atomic<bool> initialized_flag = false; std::atomic<bool> initialized_flag = false;
std::condition_variable initialized_cv; std::condition_variable initialized_cv;
std::atomic<bool> initial_batch_committed = false; std::atomic<bool> initial_batch_committed = false;
std::atomic<size_t> active_session_id_requests = 0;
nuraft::cb_func::ReturnCode callbackFunc(nuraft::cb_func::Type type, nuraft::cb_func::Param * param); nuraft::cb_func::ReturnCode callbackFunc(nuraft::cb_func::Type type, nuraft::cb_func::Param * param);

View File

@ -169,15 +169,15 @@ void KeeperStateMachine::create_snapshot(
bool ret = true; bool ret = true;
try try
{ {
auto snapshot_buf = snapshot_manager.serializeSnapshotToBuffer(*snapshot);
auto result_path = snapshot_manager.serializeSnapshotBufferToDisk(*snapshot_buf, snapshot->snapshot_meta->get_last_log_idx());
{ {
std::lock_guard lock(snapshots_lock); std::lock_guard lock(snapshots_lock);
auto snapshot_buf = snapshot_manager.serializeSnapshotToBuffer(*snapshot);
auto result_path = snapshot_manager.serializeSnapshotBufferToDisk(*snapshot_buf, snapshot->snapshot_meta->get_last_log_idx());
latest_snapshot_buf = snapshot_buf; latest_snapshot_buf = snapshot_buf;
latest_snapshot_meta = snapshot->snapshot_meta; latest_snapshot_meta = snapshot->snapshot_meta;
}
LOG_DEBUG(log, "Created persistent snapshot {} with path {}", latest_snapshot_meta->get_last_log_idx(), result_path); LOG_DEBUG(log, "Created persistent snapshot {} with path {}", latest_snapshot_meta->get_last_log_idx(), result_path);
}
{ {
/// Must do it with lock (clearing elements from list) /// Must do it with lock (clearing elements from list)
@ -228,37 +228,19 @@ void KeeperStateMachine::save_logical_snp_obj(
nuraft::ptr<nuraft::buffer> snp_buf = s.serialize(); nuraft::ptr<nuraft::buffer> snp_buf = s.serialize();
cloned_meta = nuraft::snapshot::deserialize(*snp_buf); cloned_meta = nuraft::snapshot::deserialize(*snp_buf);
/// Sometimes NuRaft can call save and create snapshots from different threads
/// at once. To avoid race conditions we serialize snapshots through snapshots_queue
/// TODO: make something better
CreateSnapshotTask snapshot_task;
std::shared_ptr<std::promise<void>> waiter = std::make_shared<std::promise<void>>();
auto future = waiter->get_future();
snapshot_task.snapshot = nullptr;
snapshot_task.create_snapshot = [this, waiter, cloned_buffer, log_idx = s.get_last_log_idx()] (KeeperStorageSnapshotPtr &&)
{
try try
{ {
auto result_path = snapshot_manager.serializeSnapshotBufferToDisk(*cloned_buffer, log_idx); std::lock_guard lock(snapshots_lock);
LOG_DEBUG(log, "Saved snapshot {} to path {}", log_idx, result_path); auto result_path = snapshot_manager.serializeSnapshotBufferToDisk(*cloned_buffer, s.get_last_log_idx());
latest_snapshot_buf = cloned_buffer;
latest_snapshot_meta = cloned_meta;
LOG_DEBUG(log, "Saved snapshot {} to path {}", s.get_last_log_idx(), result_path);
obj_id++;
} }
catch (...) catch (...)
{ {
tryLogCurrentException(log); tryLogCurrentException(log);
} }
waiter->set_value();
};
snapshots_queue.push(std::move(snapshot_task));
future.wait();
{
std::lock_guard lock(snapshots_lock);
latest_snapshot_buf = cloned_buffer;
latest_snapshot_meta = cloned_meta;
}
obj_id++;
} }
int KeeperStateMachine::read_logical_snp_obj( int KeeperStateMachine::read_logical_snp_obj(

View File

@ -177,7 +177,7 @@ inline bool_if_big_int_vs_float<TABigInt, TAFloat> equalsOpTmpl(TABigInt, TAFloa
return false; return false;
} }
/* Final realiztions */ /* Final implementations */
template <typename A, typename B> template <typename A, typename B>
@ -274,12 +274,14 @@ inline bool greaterOp<DB::UInt64, DB::Float32>(DB::UInt64 u, DB::Float32 f)
template <> template <>
inline bool greaterOp<DB::Float64, DB::UInt128>(DB::Float64 f, DB::UInt128 u) inline bool greaterOp<DB::Float64, DB::UInt128>(DB::Float64 f, DB::UInt128 u)
{ {
/// TODO: This is wrong.
return u.low == 0 && greaterOp(f, u.high); return u.low == 0 && greaterOp(f, u.high);
} }
template <> template <>
inline bool greaterOp<DB::UInt128, DB::Float64>(DB::UInt128 u, DB::Float64 f) inline bool greaterOp<DB::UInt128, DB::Float64>(DB::UInt128 u, DB::Float64 f)
{ {
/// TODO: This is wrong.
return u.low != 0 || greaterOp(u.high, f); return u.low != 0 || greaterOp(u.high, f);
} }
@ -310,56 +312,64 @@ inline bool_if_safe_conversion<A, B> equalsOp(A a, B b)
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::Float64, DB::UInt64>(DB::Float64 f, DB::UInt64 u) inline bool equalsOp<DB::Float64, DB::UInt64>(DB::Float64 f, DB::UInt64 u)
{ {
return static_cast<DB::UInt64>(f) == u && f == static_cast<DB::Float64>(u); /// Maximum exactly representable integer.
return u <= (1ULL << std::numeric_limits<DB::Float64>::digits)
&& f == static_cast<DB::Float64>(u);
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::UInt64, DB::Float64>(DB::UInt64 u, DB::Float64 f) inline bool equalsOp<DB::UInt64, DB::Float64>(DB::UInt64 u, DB::Float64 f)
{ {
return u == static_cast<DB::UInt64>(f) && static_cast<DB::Float64>(u) == f; return equalsOp(f, u);
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::Float64, DB::Int64>(DB::Float64 f, DB::Int64 u) inline bool equalsOp<DB::Float64, DB::Int64>(DB::Float64 f, DB::Int64 u)
{ {
return static_cast<DB::Int64>(f) == u && f == static_cast<DB::Float64>(u); return u <= (1LL << std::numeric_limits<DB::Float64>::digits)
&& u >= -(1LL << std::numeric_limits<DB::Float64>::digits)
&& f == static_cast<DB::Float64>(u);
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::Int64, DB::Float64>(DB::Int64 u, DB::Float64 f) inline bool equalsOp<DB::Int64, DB::Float64>(DB::Int64 u, DB::Float64 f)
{ {
return u == static_cast<DB::Int64>(f) && static_cast<DB::Float64>(u) == f; return equalsOp(f, u);
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::Float32, DB::UInt64>(DB::Float32 f, DB::UInt64 u) inline bool equalsOp<DB::Float32, DB::UInt64>(DB::Float32 f, DB::UInt64 u)
{ {
return static_cast<DB::UInt64>(f) == u && f == static_cast<DB::Float32>(u); return u <= (1ULL << std::numeric_limits<DB::Float32>::digits)
&& f == static_cast<DB::Float32>(u);
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::UInt64, DB::Float32>(DB::UInt64 u, DB::Float32 f) inline bool equalsOp<DB::UInt64, DB::Float32>(DB::UInt64 u, DB::Float32 f)
{ {
return u == static_cast<DB::UInt64>(f) && static_cast<DB::Float32>(u) == f; return equalsOp(f, u);
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::Float32, DB::Int64>(DB::Float32 f, DB::Int64 u) inline bool equalsOp<DB::Float32, DB::Int64>(DB::Float32 f, DB::Int64 u)
{ {
return static_cast<DB::Int64>(f) == u && f == static_cast<DB::Float32>(u); return u <= (1LL << std::numeric_limits<DB::Float32>::digits)
&& u >= -(1LL << std::numeric_limits<DB::Float32>::digits)
&& f == static_cast<DB::Float32>(u);
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::Int64, DB::Float32>(DB::Int64 u, DB::Float32 f) inline bool equalsOp<DB::Int64, DB::Float32>(DB::Int64 u, DB::Float32 f)
{ {
return u == static_cast<DB::Int64>(f) && static_cast<DB::Float32>(u) == f; return equalsOp(f, u);
} }
template <> template <>
inline bool NO_SANITIZE_UNDEFINED equalsOp<DB::UInt128, DB::Float64>(DB::UInt128 u, DB::Float64 f) inline bool equalsOp<DB::UInt128, DB::Float64>(DB::UInt128 u, DB::Float64 f)
{ {
/// TODO: This is wrong.
return u.low == 0 && equalsOp(static_cast<UInt64>(u.high), f); return u.low == 0 && equalsOp(static_cast<UInt64>(u.high), f);
} }

View File

@ -224,12 +224,9 @@ ReturnType SerializationNullable::deserializeTextEscapedImpl(IColumn & column, R
{ {
/// Little tricky, because we cannot discriminate null from first character. /// Little tricky, because we cannot discriminate null from first character.
if (istr.eof()) if (istr.eof() || *istr.position() != '\\') /// Some data types can deserialize absence of data (e.g. empty string), so eof is ok.
throw ParsingException("Unexpected end of stream, while parsing value of Nullable type", ErrorCodes::CANNOT_READ_ALL_DATA);
/// This is not null, surely.
if (*istr.position() != '\\')
{ {
/// This is not null, surely.
return safeDeserialize<ReturnType>(column, *nested, return safeDeserialize<ReturnType>(column, *nested,
[] { return false; }, [] { return false; },
[&nested, &istr, &settings] (IColumn & nested_column) { nested->deserializeTextEscaped(nested_column, istr, settings); }); [&nested, &istr, &settings] (IColumn & nested_column) { nested->deserializeTextEscaped(nested_column, istr, settings); });

View File

@ -18,97 +18,72 @@
namespace DB namespace DB
{ {
static const size_t MAX_CONNECTIONS = 16; namespace ErrorCodes
inline static UInt16 getPortFromContext(const Context & context, bool secure)
{ {
return secure ? context.getTCPPortSecure().value_or(0) : context.getTCPPort(); extern const int BAD_ARGUMENTS;
} }
static ConnectionPoolWithFailoverPtr createPool( namespace
const std::string & host,
UInt16 port,
bool secure,
const std::string & db,
const std::string & user,
const std::string & password)
{ {
constexpr size_t MAX_CONNECTIONS = 16;
inline UInt16 getPortFromContext(const Context & context, bool secure)
{
return secure ? context.getTCPPortSecure().value_or(0) : context.getTCPPort();
}
ConnectionPoolWithFailoverPtr createPool(const ClickHouseDictionarySource::Configuration & configuration)
{
if (configuration.is_local)
return nullptr;
ConnectionPoolPtrs pools; ConnectionPoolPtrs pools;
pools.emplace_back(std::make_shared<ConnectionPool>( pools.emplace_back(std::make_shared<ConnectionPool>(
MAX_CONNECTIONS, MAX_CONNECTIONS,
host, configuration.host,
port, configuration.port,
db, configuration.db,
user, configuration.user,
password, configuration.password,
"", /* cluster */ "", /* cluster */
"", /* cluster_secret */ "", /* cluster_secret */
"ClickHouseDictionarySource", "ClickHouseDictionarySource",
Protocol::Compression::Enable, Protocol::Compression::Enable,
secure ? Protocol::Secure::Enable : Protocol::Secure::Disable)); configuration.secure ? Protocol::Secure::Enable : Protocol::Secure::Disable));
return std::make_shared<ConnectionPoolWithFailover>(pools, LoadBalancing::RANDOM);
}
return std::make_shared<ConnectionPoolWithFailover>(pools, LoadBalancing::RANDOM);
}
}
ClickHouseDictionarySource::ClickHouseDictionarySource( ClickHouseDictionarySource::ClickHouseDictionarySource(
const DictionaryStructure & dict_struct_, const DictionaryStructure & dict_struct_,
const Poco::Util::AbstractConfiguration & config, const Configuration & configuration_,
const std::string & path_to_settings,
const std::string & config_prefix,
const Block & sample_block_, const Block & sample_block_,
const Context & context_, const Context & context_)
const std::string & default_database)
: update_time{std::chrono::system_clock::from_time_t(0)} : update_time{std::chrono::system_clock::from_time_t(0)}
, dict_struct{dict_struct_} , dict_struct{dict_struct_}
, secure(config.getBool(config_prefix + ".secure", false)) , configuration{configuration_}
, host{config.getString(config_prefix + ".host", "localhost")} , query_builder{dict_struct, configuration.db, "", configuration.table, configuration.where, IdentifierQuotingStyle::Backticks}
, port(config.getInt(config_prefix + ".port", getPortFromContext(context_, secure)))
, user{config.getString(config_prefix + ".user", "default")}
, password{config.getString(config_prefix + ".password", "")}
, db{config.getString(config_prefix + ".db", default_database)}
, table{config.getString(config_prefix + ".table")}
, where{config.getString(config_prefix + ".where", "")}
, update_field{config.getString(config_prefix + ".update_field", "")}
, invalidate_query{config.getString(config_prefix + ".invalidate_query", "")}
, query_builder{dict_struct, db, "", table, where, IdentifierQuotingStyle::Backticks}
, sample_block{sample_block_} , sample_block{sample_block_}
, context(context_) , context{context_}
, is_local{isLocalAddress({host, port}, getPortFromContext(context_, secure))} , pool{createPool(configuration)}
, pool{is_local ? nullptr : createPool(host, port, secure, db, user, password)}
, load_all_query{query_builder.composeLoadAllQuery()} , load_all_query{query_builder.composeLoadAllQuery()}
{ {
/// We should set user info even for the case when the dictionary is loaded in-process (without TCP communication).
if (is_local)
{
context.setUser(user, password, Poco::Net::SocketAddress("127.0.0.1", 0));
context = copyContextAndApplySettings(path_to_settings, context, config);
}
/// Query context is needed because some code in executeQuery function may assume it exists. /// Query context is needed because some code in executeQuery function may assume it exists.
/// Current example is Context::getSampleBlockCache from InterpreterSelectWithUnionQuery::getSampleBlock. /// Current example is Context::getSampleBlockCache from InterpreterSelectWithUnionQuery::getSampleBlock.
context.makeQueryContext(); context.makeQueryContext();
} }
ClickHouseDictionarySource::ClickHouseDictionarySource(const ClickHouseDictionarySource & other) ClickHouseDictionarySource::ClickHouseDictionarySource(const ClickHouseDictionarySource & other)
: update_time{other.update_time} : update_time{other.update_time}
, dict_struct{other.dict_struct} , dict_struct{other.dict_struct}
, secure{other.secure} , configuration{other.configuration}
, host{other.host}
, port{other.port}
, user{other.user}
, password{other.password}
, db{other.db}
, table{other.table}
, where{other.where}
, update_field{other.update_field}
, invalidate_query{other.invalidate_query}
, invalidate_query_response{other.invalidate_query_response} , invalidate_query_response{other.invalidate_query_response}
, query_builder{dict_struct, db, "", table, where, IdentifierQuotingStyle::Backticks} , query_builder{dict_struct, configuration.db, "", configuration.table, configuration.where, IdentifierQuotingStyle::Backticks}
, sample_block{other.sample_block} , sample_block{other.sample_block}
, context(other.context) , context{other.context}
, is_local{other.is_local} , pool{createPool(configuration)}
, pool{is_local ? nullptr : createPool(host, port, secure, db, user, password)}
, load_all_query{other.load_all_query} , load_all_query{other.load_all_query}
{ {
context.makeQueryContext(); context.makeQueryContext();
@ -121,7 +96,7 @@ std::string ClickHouseDictionarySource::getUpdateFieldAndDate()
time_t hr_time = std::chrono::system_clock::to_time_t(update_time) - 1; time_t hr_time = std::chrono::system_clock::to_time_t(update_time) - 1;
std::string str_time = DateLUT::instance().timeToString(hr_time); std::string str_time = DateLUT::instance().timeToString(hr_time);
update_time = std::chrono::system_clock::now(); update_time = std::chrono::system_clock::now();
return query_builder.composeUpdateQuery(update_field, str_time); return query_builder.composeUpdateQuery(configuration.update_field, str_time);
} }
else else
{ {
@ -155,9 +130,9 @@ BlockInputStreamPtr ClickHouseDictionarySource::loadKeys(const Columns & key_col
bool ClickHouseDictionarySource::isModified() const bool ClickHouseDictionarySource::isModified() const
{ {
if (!invalidate_query.empty()) if (!configuration.invalidate_query.empty())
{ {
auto response = doInvalidateQuery(invalidate_query); auto response = doInvalidateQuery(configuration.invalidate_query);
LOG_TRACE(log, "Invalidate query has returned: {}, previous value: {}", response, invalidate_query_response); LOG_TRACE(log, "Invalidate query has returned: {}, previous value: {}", response, invalidate_query_response);
if (invalidate_query_response == response) if (invalidate_query_response == response)
return false; return false;
@ -168,21 +143,21 @@ bool ClickHouseDictionarySource::isModified() const
bool ClickHouseDictionarySource::hasUpdateField() const bool ClickHouseDictionarySource::hasUpdateField() const
{ {
return !update_field.empty(); return !configuration.update_field.empty();
} }
std::string ClickHouseDictionarySource::toString() const std::string ClickHouseDictionarySource::toString() const
{ {
return "ClickHouse: " + db + '.' + table + (where.empty() ? "" : ", where: " + where); const std::string & where = configuration.where;
return "ClickHouse: " + configuration.db + '.' + configuration.table + (where.empty() ? "" : ", where: " + where);
} }
BlockInputStreamPtr ClickHouseDictionarySource::createStreamForQuery(const String & query) BlockInputStreamPtr ClickHouseDictionarySource::createStreamForQuery(const String & query)
{ {
/// Sample block should not contain first row default values /// Sample block should not contain first row default values
auto empty_sample_block = sample_block.cloneEmpty(); auto empty_sample_block = sample_block.cloneEmpty();
if (is_local) if (configuration.is_local)
{ {
auto stream = executeQuery(query, context, true).getInputStream(); auto stream = executeQuery(query, context, true).getInputStream();
stream = std::make_shared<ConvertingBlockInputStream>(stream, empty_sample_block, ConvertingBlockInputStream::MatchColumnsMode::Position); stream = std::make_shared<ConvertingBlockInputStream>(stream, empty_sample_block, ConvertingBlockInputStream::MatchColumnsMode::Position);
@ -195,7 +170,7 @@ BlockInputStreamPtr ClickHouseDictionarySource::createStreamForQuery(const Strin
std::string ClickHouseDictionarySource::doInvalidateQuery(const std::string & request) const std::string ClickHouseDictionarySource::doInvalidateQuery(const std::string & request) const
{ {
LOG_TRACE(log, "Performing invalidate query"); LOG_TRACE(log, "Performing invalidate query");
if (is_local) if (configuration.is_local)
{ {
Context query_context = context; Context query_context = context;
auto input_block = executeQuery(request, query_context, true).getInputStream(); auto input_block = executeQuery(request, query_context, true).getInputStream();
@ -210,7 +185,6 @@ std::string ClickHouseDictionarySource::doInvalidateQuery(const std::string & re
} }
} }
void registerDictionarySourceClickHouse(DictionarySourceFactory & factory) void registerDictionarySourceClickHouse(DictionarySourceFactory & factory)
{ {
auto create_table_source = [=](const DictionaryStructure & dict_struct, auto create_table_source = [=](const DictionaryStructure & dict_struct,
@ -218,12 +192,48 @@ void registerDictionarySourceClickHouse(DictionarySourceFactory & factory)
const std::string & config_prefix, const std::string & config_prefix,
Block & sample_block, Block & sample_block,
const Context & context, const Context & context,
const std::string & default_database, const std::string & default_database [[maybe_unused]],
bool /* check_config */) -> DictionarySourcePtr bool /* check_config */) -> DictionarySourcePtr
{ {
return std::make_unique<ClickHouseDictionarySource>( bool secure = config.getBool(config_prefix + ".secure", false);
dict_struct, config, config_prefix, config_prefix + ".clickhouse", sample_block, context, default_database); Context context_copy = context;
UInt16 default_port = getPortFromContext(context_copy, secure);
std::string settings_config_prefix = config_prefix + ".clickhouse";
std::string host = config.getString(settings_config_prefix + ".host", "localhost");
UInt16 port = static_cast<UInt16>(config.getUInt(settings_config_prefix + ".port", default_port));
ClickHouseDictionarySource::Configuration configuration {
.secure = config.getBool(settings_config_prefix + ".secure", false),
.host = host,
.port = port,
.user = config.getString(settings_config_prefix + ".user", "default"),
.password = config.getString(settings_config_prefix + ".password", ""),
.db = config.getString(settings_config_prefix + ".db", default_database),
.table = config.getString(settings_config_prefix + ".table"),
.where = config.getString(settings_config_prefix + ".where", ""),
.update_field = config.getString(settings_config_prefix + ".update_field", ""),
.invalidate_query = config.getString(settings_config_prefix + ".invalidate_query", ""),
.is_local = isLocalAddress({host, port}, default_port)
}; };
/// We should set user info even for the case when the dictionary is loaded in-process (without TCP communication).
if (configuration.is_local)
{
context_copy.setUser(configuration.user, configuration.password, Poco::Net::SocketAddress("127.0.0.1", 0));
context_copy = copyContextAndApplySettings(config_prefix, context_copy, config);
}
String dictionary_name = config.getString(".dictionary.name", "");
String dictionary_database = config.getString(".dictionary.database", "");
if (dictionary_name == configuration.table && dictionary_database == configuration.db)
throw Exception(ErrorCodes::BAD_ARGUMENTS, "ClickHouseDictionarySource table cannot be dictionary table");
return std::make_unique<ClickHouseDictionarySource>(dict_struct, configuration, sample_block, context_copy);
};
factory.registerSource("clickhouse", create_table_source); factory.registerSource("clickhouse", create_table_source);
} }

View File

@ -18,14 +18,26 @@ namespace DB
class ClickHouseDictionarySource final : public IDictionarySource class ClickHouseDictionarySource final : public IDictionarySource
{ {
public: public:
struct Configuration
{
const bool secure;
const std::string host;
const UInt16 port;
const std::string user;
const std::string password;
const std::string db;
const std::string table;
const std::string where;
const std::string update_field;
const std::string invalidate_query;
const bool is_local;
};
ClickHouseDictionarySource( ClickHouseDictionarySource(
const DictionaryStructure & dict_struct_, const DictionaryStructure & dict_struct_,
const Poco::Util::AbstractConfiguration & config, const Configuration & configuration_,
const std::string & path_to_settings,
const std::string & config_prefix,
const Block & sample_block_, const Block & sample_block_,
const Context & context, const Context & context);
const std::string & default_database);
/// copy-constructor is provided in order to support cloneability /// copy-constructor is provided in order to support cloneability
ClickHouseDictionarySource(const ClickHouseDictionarySource & other); ClickHouseDictionarySource(const ClickHouseDictionarySource & other);
@ -50,7 +62,7 @@ public:
/// Used for detection whether the hashtable should be preallocated /// Used for detection whether the hashtable should be preallocated
/// (since if there is WHERE then it can filter out too much) /// (since if there is WHERE then it can filter out too much)
bool hasWhere() const { return !where.empty(); } bool hasWhere() const { return !configuration.where.empty(); }
private: private:
std::string getUpdateFieldAndDate(); std::string getUpdateFieldAndDate();
@ -61,21 +73,11 @@ private:
std::chrono::time_point<std::chrono::system_clock> update_time; std::chrono::time_point<std::chrono::system_clock> update_time;
const DictionaryStructure dict_struct; const DictionaryStructure dict_struct;
const bool secure; const Configuration configuration;
const std::string host;
const UInt16 port;
const std::string user;
const std::string password;
const std::string db;
const std::string table;
const std::string where;
const std::string update_field;
std::string invalidate_query;
mutable std::string invalidate_query_response; mutable std::string invalidate_query_response;
ExternalQueryBuilder query_builder; ExternalQueryBuilder query_builder;
Block sample_block; Block sample_block;
Context context; Context context;
const bool is_local;
ConnectionPoolWithFailoverPtr pool; ConnectionPoolWithFailoverPtr pool;
const std::string load_all_query; const std::string load_all_query;
Poco::Logger * log = &Poco::Logger::get("ClickHouseDictionarySource"); Poco::Logger * log = &Poco::Logger::get("ClickHouseDictionarySource");

View File

@ -200,7 +200,7 @@ ColumnPtr HashedDictionary<dictionary_key_type, sparse>::getHierarchy(ColumnPtr
const auto & dictionary_attribute = dict_struct.attributes[hierarchical_attribute_index]; const auto & dictionary_attribute = dict_struct.attributes[hierarchical_attribute_index];
const auto & hierarchical_attribute = attributes[hierarchical_attribute_index]; const auto & hierarchical_attribute = attributes[hierarchical_attribute_index];
const UInt64 null_value = dictionary_attribute.null_value.get<UInt64>(); const UInt64 null_value = dictionary_attribute.null_value.template get<UInt64>();
const CollectionType<UInt64> & parent_keys_map = std::get<CollectionType<UInt64>>(hierarchical_attribute.container); const CollectionType<UInt64> & parent_keys_map = std::get<CollectionType<UInt64>>(hierarchical_attribute.container);
auto is_key_valid_func = [&](auto & key) { return parent_keys_map.find(key) != parent_keys_map.end(); }; auto is_key_valid_func = [&](auto & key) { return parent_keys_map.find(key) != parent_keys_map.end(); };
@ -246,7 +246,7 @@ ColumnUInt8::Ptr HashedDictionary<dictionary_key_type, sparse>::isInHierarchy(
const auto & dictionary_attribute = dict_struct.attributes[hierarchical_attribute_index]; const auto & dictionary_attribute = dict_struct.attributes[hierarchical_attribute_index];
auto & hierarchical_attribute = attributes[hierarchical_attribute_index]; auto & hierarchical_attribute = attributes[hierarchical_attribute_index];
const UInt64 null_value = dictionary_attribute.null_value.get<UInt64>(); const UInt64 null_value = dictionary_attribute.null_value.template get<UInt64>();
const CollectionType<UInt64> & parent_keys_map = std::get<CollectionType<UInt64>>(hierarchical_attribute.container); const CollectionType<UInt64> & parent_keys_map = std::get<CollectionType<UInt64>>(hierarchical_attribute.container);
auto is_key_valid_func = [&](auto & key) { return parent_keys_map.find(key) != parent_keys_map.end(); }; auto is_key_valid_func = [&](auto & key) { return parent_keys_map.find(key) != parent_keys_map.end(); };
@ -327,14 +327,14 @@ void HashedDictionary<dictionary_key_type, sparse>::createAttributes()
{ {
string_arena = std::make_unique<Arena>(); string_arena = std::make_unique<Arena>();
const auto & string_null_value = dictionary_attribute.null_value.get<String>(); const auto & string_null_value = dictionary_attribute.null_value.template get<String>();
const size_t string_null_value_size = string_null_value.size(); const size_t string_null_value_size = string_null_value.size();
const char * string_in_arena = string_arena->insert(string_null_value.data(), string_null_value_size); const char * string_in_arena = string_arena->insert(string_null_value.data(), string_null_value_size);
default_value = {string_in_arena, string_null_value_size}; default_value = {string_in_arena, string_null_value_size};
} }
else else
default_value = dictionary_attribute.null_value.get<NearestFieldType<ValueType>>(); default_value = dictionary_attribute.null_value.template get<NearestFieldType<ValueType>>();
Attribute attribute{dictionary_attribute.underlying_type, std::move(is_nullable_set), default_value, CollectionType<ValueType>(), std::move(string_arena)}; Attribute attribute{dictionary_attribute.underlying_type, std::move(is_nullable_set), default_value, CollectionType<ValueType>(), std::move(string_arena)};
attributes.emplace_back(std::move(attribute)); attributes.emplace_back(std::move(attribute));

View File

@ -101,7 +101,7 @@ using RequestedIds = const VectorUInt64 *;
using LibraryLoadIdsFunc = RawClickHouseLibraryTable (*)(LibraryData, LibrarySettings, RequestedColumnsNames, RequestedIds); using LibraryLoadIdsFunc = RawClickHouseLibraryTable (*)(LibraryData, LibrarySettings, RequestedColumnsNames, RequestedIds);
using RequestedKeys = Table *; using RequestedKeys = Table *;
/// There is no requested columns names for load keys func /// There are no requested column names for load keys func
using LibraryLoadKeysFunc = RawClickHouseLibraryTable (*)(LibraryData, LibrarySettings, RequestedKeys); using LibraryLoadKeysFunc = RawClickHouseLibraryTable (*)(LibraryData, LibrarySettings, RequestedKeys);
using LibraryIsModifiedFunc = bool (*)(LibraryContext, LibrarySettings); using LibraryIsModifiedFunc = bool (*)(LibraryContext, LibrarySettings);

View File

@ -383,7 +383,7 @@ void registerDiskLocal(DiskFactory & factory)
if (Poco::File disk{path}; !disk.canRead() || !disk.canWrite()) if (Poco::File disk{path}; !disk.canRead() || !disk.canWrite())
{ {
throw Exception("There is no RW access to disk " + name + " (" + path + ")", ErrorCodes::PATH_ACCESS_DENIED); throw Exception("There is no RW access to the disk " + name + " (" + path + ")", ErrorCodes::PATH_ACCESS_DENIED);
} }
bool has_space_ratio = config.has(config_prefix + ".keep_free_space_ratio"); bool has_space_ratio = config.has(config_prefix + ".keep_free_space_ratio");

View File

@ -27,7 +27,7 @@ struct FormatSettings
bool with_names_use_header = false; bool with_names_use_header = false;
bool write_statistics = true; bool write_statistics = true;
bool import_nested_json = false; bool import_nested_json = false;
bool null_as_default = false; bool null_as_default = true;
enum class DateTimeInputFormat enum class DateTimeInputFormat
{ {

View File

@ -21,6 +21,8 @@
#ifdef __SSE4_1__ #ifdef __SSE4_1__
#include <smmintrin.h> #include <smmintrin.h>
#else
#include <fenv.h>
#endif #endif
@ -34,6 +36,7 @@ namespace ErrorCodes
extern const int ARGUMENT_OUT_OF_BOUND; extern const int ARGUMENT_OUT_OF_BOUND;
extern const int ILLEGAL_COLUMN; extern const int ILLEGAL_COLUMN;
extern const int BAD_ARGUMENTS; extern const int BAD_ARGUMENTS;
extern const int CANNOT_SET_ROUNDING_MODE;
} }
@ -231,7 +234,7 @@ inline float roundWithMode(float x, RoundingMode mode)
{ {
switch (mode) switch (mode)
{ {
case RoundingMode::Round: return roundf(x); case RoundingMode::Round: return nearbyintf(x);
case RoundingMode::Floor: return floorf(x); case RoundingMode::Floor: return floorf(x);
case RoundingMode::Ceil: return ceilf(x); case RoundingMode::Ceil: return ceilf(x);
case RoundingMode::Trunc: return truncf(x); case RoundingMode::Trunc: return truncf(x);
@ -244,7 +247,7 @@ inline double roundWithMode(double x, RoundingMode mode)
{ {
switch (mode) switch (mode)
{ {
case RoundingMode::Round: return round(x); case RoundingMode::Round: return nearbyint(x);
case RoundingMode::Floor: return floor(x); case RoundingMode::Floor: return floor(x);
case RoundingMode::Ceil: return ceil(x); case RoundingMode::Ceil: return ceil(x);
case RoundingMode::Trunc: return trunc(x); case RoundingMode::Trunc: return trunc(x);
@ -595,6 +598,15 @@ public:
return false; return false;
}; };
#if !defined(__SSE4_1__)
/// In case of "nearbyint" function is used, we should ensure the expected rounding mode for the Banker's rounding.
/// Actually it is by default. But we will set it just in case.
if constexpr (rounding_mode == RoundingMode::Round)
if (0 != fesetround(FE_TONEAREST))
throw Exception("Cannot set floating point rounding mode", ErrorCodes::CANNOT_SET_ROUNDING_MODE);
#endif
if (!callOnIndexAndDataType<void>(column.type->getTypeId(), call)) if (!callOnIndexAndDataType<void>(column.type->getTypeId(), call))
{ {
throw Exception("Illegal column " + column.name + " of argument of function " + getName(), throw Exception("Illegal column " + column.name + " of argument of function " + getName(),

View File

@ -65,12 +65,12 @@ public:
const auto & re2 = regexp->getRE2(); const auto & re2 = regexp->getRE2();
if (!re2) if (!re2)
throw Exception("There is no groups in regexp: " + needle, ErrorCodes::BAD_ARGUMENTS); throw Exception("There are no groups in regexp: " + needle, ErrorCodes::BAD_ARGUMENTS);
const size_t groups_count = re2->NumberOfCapturingGroups(); const size_t groups_count = re2->NumberOfCapturingGroups();
if (!groups_count) if (!groups_count)
throw Exception("There is no groups in regexp: " + needle, ErrorCodes::BAD_ARGUMENTS); throw Exception("There are no groups in regexp: " + needle, ErrorCodes::BAD_ARGUMENTS);
// Including 0-group, which is the whole regexp. // Including 0-group, which is the whole regexp.
PODArrayWithStackMemory<re2_st::StringPiece, 128> matched_groups(groups_count + 1); PODArrayWithStackMemory<re2_st::StringPiece, 128> matched_groups(groups_count + 1);

View File

@ -1220,29 +1220,35 @@ Block Aggregator::prepareBlockAndFill(
return res; return res;
} }
void Aggregator::fillAggregateColumnsWithSingleKey( void Aggregator::addSingleKeyToAggregateColumns(
AggregatedDataVariants & data_variants, const AggregatedDataVariants & data_variants,
MutableColumns & final_aggregate_columns) MutableColumns & aggregate_columns) const
{ {
AggregatedDataWithoutKey & data = data_variants.without_key; const auto & data = data_variants.without_key;
for (size_t i = 0; i < params.aggregates_size; ++i) for (size_t i = 0; i < params.aggregates_size; ++i)
{ {
ColumnAggregateFunction & column_aggregate_func = assert_cast<ColumnAggregateFunction &>(*final_aggregate_columns[i]); auto & column_aggregate_func = assert_cast<ColumnAggregateFunction &>(*aggregate_columns[i]);
for (auto & pool : data_variants.aggregates_pools)
{
column_aggregate_func.addArena(pool);
}
column_aggregate_func.getData().push_back(data + offsets_of_aggregate_states[i]); column_aggregate_func.getData().push_back(data + offsets_of_aggregate_states[i]);
} }
data = nullptr; }
void Aggregator::addArenasToAggregateColumns(
const AggregatedDataVariants & data_variants,
MutableColumns & aggregate_columns) const
{
for (size_t i = 0; i < params.aggregates_size; ++i)
{
auto & column_aggregate_func = assert_cast<ColumnAggregateFunction &>(*aggregate_columns[i]);
for (const auto & pool : data_variants.aggregates_pools)
column_aggregate_func.addArena(pool);
}
} }
void Aggregator::createStatesAndFillKeyColumnsWithSingleKey( void Aggregator::createStatesAndFillKeyColumnsWithSingleKey(
AggregatedDataVariants & data_variants, AggregatedDataVariants & data_variants,
Columns & key_columns, Columns & key_columns,
size_t key_row, size_t key_row,
MutableColumns & final_key_columns) MutableColumns & final_key_columns) const
{ {
AggregateDataPtr place = data_variants.aggregates_pool->alignedAlloc(total_size_of_aggregate_states, align_aggregate_states); AggregateDataPtr place = data_variants.aggregates_pool->alignedAlloc(total_size_of_aggregate_states, align_aggregate_states);
createAggregateStates(place); createAggregateStates(place);

View File

@ -1295,14 +1295,18 @@ protected:
AggregateFunctionInstructions & instructions, AggregateFunctionInstructions & instructions,
NestedColumnsHolder & nested_columns_holder); NestedColumnsHolder & nested_columns_holder);
void fillAggregateColumnsWithSingleKey( void addSingleKeyToAggregateColumns(
AggregatedDataVariants & data_variants, const AggregatedDataVariants & data_variants,
MutableColumns & final_aggregate_columns); MutableColumns & aggregate_columns) const;
void addArenasToAggregateColumns(
const AggregatedDataVariants & data_variants,
MutableColumns & aggregate_columns) const;
void createStatesAndFillKeyColumnsWithSingleKey( void createStatesAndFillKeyColumnsWithSingleKey(
AggregatedDataVariants & data_variants, AggregatedDataVariants & data_variants,
Columns & key_columns, size_t key_row, Columns & key_columns, size_t key_row,
MutableColumns & final_key_columns); MutableColumns & final_key_columns) const;
}; };

View File

@ -863,7 +863,7 @@ void ActionsDAG::compileFunctions(size_t min_count_to_compile_expression)
if (!used_in_result.count(frame.node) && cur.all_parents_compilable) if (!used_in_result.count(frame.node) && cur.all_parents_compilable)
should_compile = false; should_compile = false;
/// There is not reason to inline single node. /// There is no reason to inline single node.
/// The result of compiling function in isolation is pretty much the same as its `execute` method. /// The result of compiling function in isolation is pretty much the same as its `execute` method.
if (cur.num_inlineable_nodes <= 1) if (cur.num_inlineable_nodes <= 1)
should_compile = false; should_compile = false;

View File

@ -76,6 +76,7 @@ int nullableCompareAt(const IColumn & left_column, const IColumn & right_column,
return left_column.compareAt(lhs_pos, rhs_pos, right_column, null_direction_hint); return left_column.compareAt(lhs_pos, rhs_pos, right_column, null_direction_hint);
} }
/// Get first and last row from sorted block
Block extractMinMax(const Block & block, const Block & keys) Block extractMinMax(const Block & block, const Block & keys)
{ {
if (block.rows() == 0) if (block.rows() == 0)
@ -86,7 +87,7 @@ Block extractMinMax(const Block & block, const Block & keys)
for (size_t i = 0; i < columns.size(); ++i) for (size_t i = 0; i < columns.size(); ++i)
{ {
const auto & src_column = block.getByName(keys.getByPosition(i).name); const auto & src_column = block.getByName(min_max.getByPosition(i).name);
columns[i]->insertFrom(*src_column.column, 0); columns[i]->insertFrom(*src_column.column, 0);
columns[i]->insertFrom(*src_column.column, block.rows() - 1); columns[i]->insertFrom(*src_column.column, block.rows() - 1);
@ -465,6 +466,7 @@ MergeJoin::MergeJoin(std::shared_ptr<TableJoin> table_join_, const Block & right
table_join->splitAdditionalColumns(right_sample_block, right_table_keys, right_columns_to_add); table_join->splitAdditionalColumns(right_sample_block, right_table_keys, right_columns_to_add);
JoinCommon::removeLowCardinalityInplace(right_table_keys); JoinCommon::removeLowCardinalityInplace(right_table_keys);
JoinCommon::removeLowCardinalityInplace(right_sample_block, table_join->keyNamesRight());
const NameSet required_right_keys = table_join->requiredRightKeys(); const NameSet required_right_keys = table_join->requiredRightKeys();
for (const auto & column : right_table_keys) for (const auto & column : right_table_keys)
@ -485,6 +487,7 @@ MergeJoin::MergeJoin(std::shared_ptr<TableJoin> table_join_, const Block & right
left_blocks_buffer = std::make_shared<SortedBlocksBuffer>(left_sort_description, max_bytes); left_blocks_buffer = std::make_shared<SortedBlocksBuffer>(left_sort_description, max_bytes);
} }
/// Has to be called even if totals are empty
void MergeJoin::setTotals(const Block & totals_block) void MergeJoin::setTotals(const Block & totals_block)
{ {
totals = totals_block; totals = totals_block;

View File

@ -76,12 +76,15 @@ private:
Block right_table_keys; Block right_table_keys;
Block right_columns_to_add; Block right_columns_to_add;
SortedBlocksWriter::Blocks right_blocks; SortedBlocksWriter::Blocks right_blocks;
/// Each block stores first and last row from corresponding sorted block on disk
Blocks min_max_right_blocks; Blocks min_max_right_blocks;
std::shared_ptr<SortedBlocksBuffer> left_blocks_buffer; std::shared_ptr<SortedBlocksBuffer> left_blocks_buffer;
std::shared_ptr<RowBitmaps> used_rows_bitmap; std::shared_ptr<RowBitmaps> used_rows_bitmap;
mutable std::unique_ptr<Cache> cached_right_blocks; mutable std::unique_ptr<Cache> cached_right_blocks;
std::vector<std::shared_ptr<Block>> loaded_right_blocks; std::vector<std::shared_ptr<Block>> loaded_right_blocks;
std::unique_ptr<SortedBlocksWriter> disk_writer; std::unique_ptr<SortedBlocksWriter> disk_writer;
/// Set of files with sorted blocks
SortedBlocksWriter::SortedFiles flushed_right_blocks; SortedBlocksWriter::SortedFiles flushed_right_blocks;
Block totals; Block totals;
std::atomic<bool> is_in_memory{true}; std::atomic<bool> is_in_memory{true};

View File

@ -24,11 +24,13 @@ FinishAggregatingInOrderAlgorithm::FinishAggregatingInOrderAlgorithm(
const Block & header_, const Block & header_,
size_t num_inputs_, size_t num_inputs_,
AggregatingTransformParamsPtr params_, AggregatingTransformParamsPtr params_,
SortDescription description_) SortDescription description_,
size_t max_block_size_)
: header(header_) : header(header_)
, num_inputs(num_inputs_) , num_inputs(num_inputs_)
, params(params_) , params(params_)
, description(std::move(description_)) , description(std::move(description_))
, max_block_size(max_block_size_)
{ {
/// Replace column names in description to positions. /// Replace column names in description to positions.
for (auto & column_description : description) for (auto & column_description : description)
@ -56,6 +58,13 @@ void FinishAggregatingInOrderAlgorithm::consume(Input & input, size_t source_num
IMergingAlgorithm::Status FinishAggregatingInOrderAlgorithm::merge() IMergingAlgorithm::Status FinishAggregatingInOrderAlgorithm::merge()
{ {
if (!inputs_to_update.empty())
{
Status status(inputs_to_update.back());
inputs_to_update.pop_back();
return status;
}
/// Find the input with smallest last row. /// Find the input with smallest last row.
std::optional<size_t> best_input; std::optional<size_t> best_input;
for (size_t i = 0; i < num_inputs; ++i) for (size_t i = 0; i < num_inputs; ++i)
@ -94,7 +103,15 @@ IMergingAlgorithm::Status FinishAggregatingInOrderAlgorithm::merge()
states[i].to_row = (it == indices.end() ? states[i].num_rows : *it); states[i].to_row = (it == indices.end() ? states[i].num_rows : *it);
} }
Status status(*best_input); addToAggregation();
/// At least one chunk should be fully aggregated.
assert(!inputs_to_update.empty());
Status status(inputs_to_update.back());
inputs_to_update.pop_back();
/// Do not merge blocks, if there are too few rows.
if (accumulated_rows >= max_block_size)
status.chunk = aggregate(); status.chunk = aggregate();
return status; return status;
@ -102,8 +119,14 @@ IMergingAlgorithm::Status FinishAggregatingInOrderAlgorithm::merge()
Chunk FinishAggregatingInOrderAlgorithm::aggregate() Chunk FinishAggregatingInOrderAlgorithm::aggregate()
{ {
BlocksList blocks; auto aggregated = params->aggregator.mergeBlocks(blocks, false);
blocks.clear();
accumulated_rows = 0;
return {aggregated.getColumns(), aggregated.rows()};
}
void FinishAggregatingInOrderAlgorithm::addToAggregation()
{
for (size_t i = 0; i < num_inputs; ++i) for (size_t i = 0; i < num_inputs; ++i)
{ {
const auto & state = states[i]; const auto & state = states[i];
@ -112,7 +135,7 @@ Chunk FinishAggregatingInOrderAlgorithm::aggregate()
if (state.to_row - state.current_row == state.num_rows) if (state.to_row - state.current_row == state.num_rows)
{ {
blocks.emplace_back(header.cloneWithColumns(states[i].all_columns)); blocks.emplace_back(header.cloneWithColumns(state.all_columns));
} }
else else
{ {
@ -125,10 +148,11 @@ Chunk FinishAggregatingInOrderAlgorithm::aggregate()
} }
states[i].current_row = states[i].to_row; states[i].current_row = states[i].to_row;
accumulated_rows += blocks.back().rows();
if (!states[i].isValid())
inputs_to_update.push_back(i);
} }
auto aggregated = params->aggregator.mergeBlocks(blocks, false);
return {aggregated.getColumns(), aggregated.rows()};
} }
} }

View File

@ -37,7 +37,8 @@ public:
const Block & header_, const Block & header_,
size_t num_inputs_, size_t num_inputs_,
AggregatingTransformParamsPtr params_, AggregatingTransformParamsPtr params_,
SortDescription description_); SortDescription description_,
size_t max_block_size_);
void initialize(Inputs inputs) override; void initialize(Inputs inputs) override;
void consume(Input & input, size_t source_num) override; void consume(Input & input, size_t source_num) override;
@ -45,6 +46,7 @@ public:
private: private:
Chunk aggregate(); Chunk aggregate();
void addToAggregation();
struct State struct State
{ {
@ -66,8 +68,13 @@ private:
size_t num_inputs; size_t num_inputs;
AggregatingTransformParamsPtr params; AggregatingTransformParamsPtr params;
SortDescription description; SortDescription description;
size_t max_block_size;
Inputs current_inputs; Inputs current_inputs;
std::vector<State> states; std::vector<State> states;
std::vector<size_t> inputs_to_update;
BlocksList blocks;
size_t accumulated_rows = 0;
}; };
} }

View File

@ -16,13 +16,15 @@ public:
const Block & header, const Block & header,
size_t num_inputs, size_t num_inputs,
AggregatingTransformParamsPtr params, AggregatingTransformParamsPtr params,
SortDescription description) SortDescription description,
size_t max_block_size)
: IMergingTransform( : IMergingTransform(
num_inputs, header, header, true, num_inputs, header, header, true,
header, header,
num_inputs, num_inputs,
params, params,
std::move(description)) std::move(description),
max_block_size)
{ {
} }

View File

@ -100,7 +100,8 @@ void AggregatingStep::transformPipeline(QueryPipeline & pipeline, const BuildQue
pipeline.getHeader(), pipeline.getHeader(),
pipeline.getNumStreams(), pipeline.getNumStreams(),
transform_params, transform_params,
group_by_sort_description); group_by_sort_description,
max_block_size);
pipeline.addTransform(std::move(transform)); pipeline.addTransform(std::move(transform));
aggregating_sorted = collector.detachProcessors(1); aggregating_sorted = collector.detachProcessors(1);

View File

@ -1,6 +1,7 @@
#include <Processors/Transforms/AggregatingInOrderTransform.h> #include <Processors/Transforms/AggregatingInOrderTransform.h>
#include <DataTypes/DataTypeLowCardinality.h> #include <DataTypes/DataTypeLowCardinality.h>
#include <Core/SortCursor.h> #include <Core/SortCursor.h>
#include <ext/range.h>
namespace DB namespace DB
{ {
@ -58,6 +59,7 @@ void AggregatingInOrderTransform::consume(Chunk chunk)
LOG_TRACE(log, "Aggregating in order"); LOG_TRACE(log, "Aggregating in order");
is_consume_started = true; is_consume_started = true;
} }
src_rows += rows; src_rows += rows;
src_bytes += chunk.bytes(); src_bytes += chunk.bytes();
@ -82,58 +84,55 @@ void AggregatingInOrderTransform::consume(Chunk chunk)
res_aggregate_columns.resize(params->params.aggregates_size); res_aggregate_columns.resize(params->params.aggregates_size);
for (size_t i = 0; i < params->params.keys_size; ++i) for (size_t i = 0; i < params->params.keys_size; ++i)
{
res_key_columns[i] = res_header.safeGetByPosition(i).type->createColumn(); res_key_columns[i] = res_header.safeGetByPosition(i).type->createColumn();
}
for (size_t i = 0; i < params->params.aggregates_size; ++i) for (size_t i = 0; i < params->params.aggregates_size; ++i)
{
res_aggregate_columns[i] = res_header.safeGetByPosition(i + params->params.keys_size).type->createColumn(); res_aggregate_columns[i] = res_header.safeGetByPosition(i + params->params.keys_size).type->createColumn();
}
params->aggregator.createStatesAndFillKeyColumnsWithSingleKey(variants, key_columns, key_begin, res_key_columns); params->aggregator.createStatesAndFillKeyColumnsWithSingleKey(variants, key_columns, key_begin, res_key_columns);
params->aggregator.addArenasToAggregateColumns(variants, res_aggregate_columns);
++cur_block_size; ++cur_block_size;
} }
ssize_t mid = 0;
ssize_t high = 0;
ssize_t low = -1;
/// Will split block into segments with the same key /// Will split block into segments with the same key
while (key_end != rows) while (key_end != rows)
{ {
high = rows;
/// Find the first position of new (not current) key in current chunk /// Find the first position of new (not current) key in current chunk
while (high - low > 1) auto indices = ext::range(key_begin, rows);
auto it = std::upper_bound(indices.begin(), indices.end(), cur_block_size - 1,
[&](size_t lhs_row, size_t rhs_row)
{ {
mid = (low + high) / 2; return less(res_key_columns, key_columns, lhs_row, rhs_row, group_by_description);
if (!less(res_key_columns, key_columns, cur_block_size - 1, mid, group_by_description)) });
low = mid;
else key_end = (it == indices.end() ? rows : *it);
high = mid;
}
key_end = high;
/// Add data to aggr. state if interval is not empty. Empty when haven't found current key in new block. /// Add data to aggr. state if interval is not empty. Empty when haven't found current key in new block.
if (key_begin != key_end) if (key_begin != key_end)
{
params->aggregator.executeOnIntervalWithoutKeyImpl(variants.without_key, key_begin, key_end, aggregate_function_instructions.data(), variants.aggregates_pool); params->aggregator.executeOnIntervalWithoutKeyImpl(variants.without_key, key_begin, key_end, aggregate_function_instructions.data(), variants.aggregates_pool);
}
low = key_begin = key_end;
/// We finalize last key aggregation state if a new key found. /// We finalize last key aggregation state if a new key found.
if (key_begin != rows) if (key_end != rows)
{ {
params->aggregator.fillAggregateColumnsWithSingleKey(variants, res_aggregate_columns); params->aggregator.addSingleKeyToAggregateColumns(variants, res_aggregate_columns);
/// If res_block_size is reached we have to stop consuming and generate the block. Save the extra rows into new chunk. /// If res_block_size is reached we have to stop consuming and generate the block. Save the extra rows into new chunk.
if (cur_block_size == res_block_size) if (cur_block_size == res_block_size)
{ {
Columns source_columns = chunk.detachColumns(); Columns source_columns = chunk.detachColumns();
for (auto & source_column : source_columns) for (auto & source_column : source_columns)
source_column = source_column->cut(key_begin, rows - key_begin); source_column = source_column->cut(key_end, rows - key_end);
current_chunk = Chunk(source_columns, rows - key_begin); current_chunk = Chunk(source_columns, rows - key_end);
src_rows -= current_chunk.getNumRows(); src_rows -= current_chunk.getNumRows();
block_end_reached = true; block_end_reached = true;
need_generate = true; need_generate = true;
cur_block_size = 0; cur_block_size = 0;
variants.without_key = nullptr;
/// Arenas cannot be destroyed here, since later, in FinalizingSimpleTransform /// Arenas cannot be destroyed here, since later, in FinalizingSimpleTransform
/// there will be finalizeChunk(), but even after /// there will be finalizeChunk(), but even after
/// finalizeChunk() we cannot destroy arena, since some memory /// finalizeChunk() we cannot destroy arena, since some memory
@ -155,10 +154,13 @@ void AggregatingInOrderTransform::consume(Chunk chunk)
} }
/// We create a new state for the new key and update res_key_columns /// We create a new state for the new key and update res_key_columns
params->aggregator.createStatesAndFillKeyColumnsWithSingleKey(variants, key_columns, key_begin, res_key_columns); params->aggregator.createStatesAndFillKeyColumnsWithSingleKey(variants, key_columns, key_end, res_key_columns);
++cur_block_size; ++cur_block_size;
} }
key_begin = key_end;
} }
block_end_reached = false; block_end_reached = false;
} }
@ -234,7 +236,10 @@ IProcessor::Status AggregatingInOrderTransform::prepare()
void AggregatingInOrderTransform::generate() void AggregatingInOrderTransform::generate()
{ {
if (cur_block_size && is_consume_finished) if (cur_block_size && is_consume_finished)
params->aggregator.fillAggregateColumnsWithSingleKey(variants, res_aggregate_columns); {
params->aggregator.addSingleKeyToAggregateColumns(variants, res_aggregate_columns);
variants.without_key = nullptr;
}
Block res = res_header.cloneEmpty(); Block res = res_header.cloneEmpty();

View File

@ -72,6 +72,7 @@ TCPHandler::~TCPHandler()
try try
{ {
state.reset(); state.reset();
if (out)
out->next(); out->next();
} }
catch (...) catch (...)

View File

@ -609,9 +609,13 @@ void IMergeTreeDataPart::loadIndex()
size_t marks_count = index_granularity.getMarksCount(); size_t marks_count = index_granularity.getMarksCount();
Serializations serializations(key_size);
for (size_t j = 0; j < key_size; ++j)
serializations[j] = primary_key.data_types[j]->getDefaultSerialization();
for (size_t i = 0; i < marks_count; ++i) //-V756 for (size_t i = 0; i < marks_count; ++i) //-V756
for (size_t j = 0; j < key_size; ++j) for (size_t j = 0; j < key_size; ++j)
primary_key.data_types[j]->getDefaultSerialization()->deserializeBinary(*loaded_index[j], *index_file); serializations[j]->deserializeBinary(*loaded_index[j], *index_file);
for (size_t i = 0; i < key_size; ++i) for (size_t i = 0; i < key_size; ++i)
{ {

View File

@ -813,7 +813,7 @@ void MergeTreeData::loadDataParts(bool skip_sanity_checks)
if (part_names_with_disks.empty() && parts_from_wal.empty()) if (part_names_with_disks.empty() && parts_from_wal.empty())
{ {
LOG_DEBUG(log, "There is no data parts"); LOG_DEBUG(log, "There are no data parts");
return; return;
} }

View File

@ -357,6 +357,11 @@ void LogBlockOutputStream::writeSuffix()
streams.clear(); streams.clear();
done = true; done = true;
/// unlock should be done from the same thread as lock, and dtor may be
/// called from different thread, so it should be done here (at least in
/// case of no exceptions occurred)
lock.unlock();
} }

View File

@ -86,7 +86,7 @@ private:
DiskPtr disk; DiskPtr disk;
String table_path; String table_path;
mutable std::shared_timed_mutex rwlock; std::shared_timed_mutex rwlock;
Files files; Files files;

View File

@ -228,6 +228,11 @@ public:
storage.file_checker.save(); storage.file_checker.save();
done = true; done = true;
/// unlock should be done from the same thread as lock, and dtor may be
/// called from different thread, so it should be done here (at least in
/// case of no exceptions occurred)
lock.unlock();
} }
private: private:

View File

@ -68,7 +68,7 @@ private:
size_t max_compress_block_size; size_t max_compress_block_size;
FileChecker file_checker; FileChecker file_checker;
mutable std::shared_timed_mutex rwlock; std::shared_timed_mutex rwlock;
Poco::Logger * log; Poco::Logger * log;
}; };

View File

@ -357,6 +357,11 @@ void TinyLogBlockOutputStream::writeSuffix()
for (const auto & file : column_files) for (const auto & file : column_files)
storage.file_checker.update(file); storage.file_checker.update(file);
storage.file_checker.save(); storage.file_checker.save();
/// unlock should be done from the same thread as lock, and dtor may be
/// called from different thread, so it should be done here (at least in
/// case of no exceptions occurred)
lock.unlock();
} }

View File

@ -70,7 +70,7 @@ private:
Files files; Files files;
FileChecker file_checker; FileChecker file_checker;
mutable std::shared_timed_mutex rwlock; std::shared_timed_mutex rwlock;
Poco::Logger * log; Poco::Logger * log;

View File

@ -406,7 +406,7 @@ def run_tests_array(all_tests_with_params):
status += stderr status += stderr
else: else:
counter = 1 counter = 1
while proc.returncode != 0 and need_retry(stderr): while need_retry(stderr):
proc, stdout, stderr, total_time = run_single_test(args, ext, server_logs_level, client_options, case_file, stdout_file, stderr_file, suite_tmp_dir) proc, stdout, stderr, total_time = run_single_test(args, ext, server_logs_level, client_options, case_file, stdout_file, stderr_file, suite_tmp_dir)
sleep(2**counter) sleep(2**counter)
counter += 1 counter += 1

View File

@ -122,8 +122,8 @@ def test_attach_without_fetching(start_cluster):
with PartitionManager() as pm: with PartitionManager() as pm:
# If something goes wrong and replica 2 wants to fetch data, the test will fail. # If something goes wrong and replica 2 wants to fetch data, the test will fail.
pm.partition_instances(node_2, node_1) pm.partition_instances(node_2, node_1, action='REJECT --reject-with tcp-reset')
pm.partition_instances(node_1, node_3) pm.partition_instances(node_1, node_3, action='REJECT --reject-with tcp-reset')
node_1.query("ALTER TABLE test ATTACH PART '0_0_0_0'") node_1.query("ALTER TABLE test ATTACH PART '0_0_0_0'")

View File

@ -9,6 +9,9 @@
<force_sync>false</force_sync> <force_sync>false</force_sync>
<startup_timeout>120000</startup_timeout> <startup_timeout>120000</startup_timeout>
<raft_logs_level>trace</raft_logs_level> <raft_logs_level>trace</raft_logs_level>
<heart_beat_interval_ms>1000</heart_beat_interval_ms>
<election_timeout_lower_bound_ms>2000</election_timeout_lower_bound_ms>
<election_timeout_upper_bound_ms>4000</election_timeout_upper_bound_ms>
<quorum_reads>{quorum_reads}</quorum_reads> <quorum_reads>{quorum_reads}</quorum_reads>
<snapshot_distance>{snapshot_distance}</snapshot_distance> <snapshot_distance>{snapshot_distance}</snapshot_distance>
<stale_log_gap>{stale_log_gap}</stale_log_gap> <stale_log_gap>{stale_log_gap}</stale_log_gap>

View File

@ -16,3 +16,5 @@
(def coordination-logs-dir (str coordination-data-dir "/logs")) (def coordination-logs-dir (str coordination-data-dir "/logs"))
(def stderr-file (str logs-dir "/stderr.log")) (def stderr-file (str logs-dir "/stderr.log"))
(def binaries-cache-dir (str common-prefix "/binaries"))

View File

@ -17,9 +17,7 @@
(defn get-clickhouse-url (defn get-clickhouse-url
[url] [url]
(let [download-result (cu/wget! url)] (non-precise-cached-wget! url))
(do (c/exec :mv download-result common-prefix)
(str common-prefix "/" download-result))))
(defn download-clickhouse (defn download-clickhouse
[source] [source]
@ -49,6 +47,7 @@
(defn chmod-binary (defn chmod-binary
[path] [path]
(info "Binary path chmod" path)
(c/exec :chmod :+x path)) (c/exec :chmod :+x path))
(defn install-downloaded-clickhouse (defn install-downloaded-clickhouse
@ -90,6 +89,13 @@
(c/exec :echo (slurp (io/resource "listen.xml")) :> (str sub-configs-dir "/listen.xml")) (c/exec :echo (slurp (io/resource "listen.xml")) :> (str sub-configs-dir "/listen.xml"))
(c/exec :echo (cluster-config test node (slurp (io/resource "keeper_config.xml"))) :> (str sub-configs-dir "/keeper_config.xml"))) (c/exec :echo (cluster-config test node (slurp (io/resource "keeper_config.xml"))) :> (str sub-configs-dir "/keeper_config.xml")))
(defn collect-traces
[test node]
(let [pid (c/exec :pidof "clickhouse")]
(c/exec :timeout :-s "KILL" "60" :gdb :-ex "set pagination off" :-ex (str "set logging file " logs-dir "/gdb.log") :-ex
"set logging on" :-ex "backtrace" :-ex "thread apply all backtrace"
:-ex "backtrace" :-ex "detach" :-ex "quit" :--pid pid :|| :true)))
(defn db (defn db
[version reuse-binary] [version reuse-binary]
(reify db/DB (reify db/DB
@ -110,19 +116,31 @@
(teardown! [_ test node] (teardown! [_ test node]
(info node "Tearing down clickhouse") (info node "Tearing down clickhouse")
(kill-clickhouse! node test)
(c/su (c/su
(kill-clickhouse! node test)
(if (not reuse-binary) (if (not reuse-binary)
(c/exec :rm :-rf binary-path)) (c/exec :rm :-rf binary-path))
(c/exec :rm :-rf pid-file-path) (c/exec :rm :-rf pid-file-path)
(c/exec :rm :-rf data-dir) (c/exec :rm :-rf data-dir)
;(c/exec :rm :-rf logs-dir) (c/exec :rm :-rf logs-dir)
(c/exec :rm :-rf configs-dir))) (c/exec :rm :-rf configs-dir)))
db/LogFiles db/LogFiles
(log-files [_ test node] (log-files [_ test node]
(c/su (c/su
(if (cu/exists? pid-file-path)
(do
(info node "Collecting traces")
(collect-traces test node))
(info node "Pid files doesn't exists"))
(kill-clickhouse! node test) (kill-clickhouse! node test)
(if (cu/exists? coordination-data-dir)
(do
(info node "Coordination files exists, going to compress")
(c/cd data-dir (c/cd data-dir
(c/exec :tar :czf "coordination.tar.gz" "coordination"))) (c/exec :tar :czf "coordination.tar.gz" "coordination")))))
[stderr-file (str logs-dir "/clickhouse-server.log") (str data-dir "/coordination.tar.gz")]))) (let [common-logs [stderr-file (str logs-dir "/clickhouse-server.log") (str data-dir "/coordination.tar.gz")]
gdb-log (str logs-dir "/gdb.log")]
(if (cu/exists? (str logs-dir "/gdb.log"))
(conj common-logs gdb-log)
common-logs)))))

View File

@ -18,7 +18,8 @@
:nodename node)) :nodename node))
(setup! [this test] (setup! [this test]
(zk-create-if-not-exists conn k "#{}")) (exec-with-retries 30 (fn []
(zk-create-if-not-exists conn k "#{}"))))
(invoke! [this test op] (invoke! [this test op]
(case (:f op) (case (:f op)

View File

@ -6,11 +6,24 @@
[jepsen.control.util :as cu] [jepsen.control.util :as cu]
[jepsen.clickhouse-keeper.constants :refer :all] [jepsen.clickhouse-keeper.constants :refer :all]
[jepsen.control :as c] [jepsen.control :as c]
[clojure.tools.logging :refer :all]) [clojure.tools.logging :refer :all]
[clojure.java.io :as io])
(:import (org.apache.zookeeper.data Stat) (:import (org.apache.zookeeper.data Stat)
(org.apache.zookeeper CreateMode (org.apache.zookeeper CreateMode
ZooKeeper) ZooKeeper)
(org.apache.zookeeper ZooKeeper KeeperException KeeperException$BadVersionException))) (org.apache.zookeeper ZooKeeper KeeperException KeeperException$BadVersionException)
(java.security MessageDigest)))
(defn exec-with-retries
[retries f & args]
(let [res (try {:value (apply f args)}
(catch Exception e
(if (zero? retries)
(throw e)
{:exception e})))]
(if (:exception res)
(do (Thread/sleep 1000) (recur (dec retries) f args))
(:value res))))
(defn parse-long (defn parse-long
"Parses a string to a Long. Passes through `nil` and empty strings." "Parses a string to a Long. Passes through `nil` and empty strings."
@ -32,7 +45,7 @@
(defn zk-connect (defn zk-connect
[host port timeout] [host port timeout]
(zk/connect (str host ":" port) :timeout-msec timeout)) (exec-with-retries 15 (fn [] (zk/connect (str host ":" port) :timeout-msec timeout))))
(defn zk-create-range (defn zk-create-range
[conn n] [conn n]
@ -168,13 +181,23 @@
:--keeper_server.logs_storage_path coordination-logs-dir) :--keeper_server.logs_storage_path coordination-logs-dir)
(wait-clickhouse-alive! node test))) (wait-clickhouse-alive! node test)))
(defn exec-with-retries (defn md5 [^String s]
[retries f & args] (let [algorithm (MessageDigest/getInstance "MD5")
(let [res (try {:value (apply f args)} raw (.digest algorithm (.getBytes s))]
(catch Exception e (format "%032x" (BigInteger. 1 raw))))
(if (zero? retries)
(throw e) (defn non-precise-cached-wget!
{:exception e})))] [url]
(if (:exception res) (let [encoded-url (md5 url)
(do (Thread/sleep 1000) (recur (dec retries) f args)) expected-file-name (.getName (io/file url))
(:value res)))) dest-file (str binaries-cache-dir "/" encoded-url)
dest-symlink (str common-prefix "/" expected-file-name)
wget-opts (concat cu/std-wget-opts [:-O dest-file])]
(when-not (cu/exists? dest-file)
(info "Downloading" url)
(do (c/exec :mkdir :-p binaries-cache-dir)
(c/cd binaries-cache-dir
(cu/wget-helper! wget-opts url))))
(c/exec :rm :-rf dest-symlink)
(c/exec :ln :-s dest-file dest-symlink)
dest-symlink))

View File

@ -58,7 +58,7 @@
SELECT dictGet('default.simple_key_flat_dictionary', {column_name}, number) SELECT dictGet('default.simple_key_flat_dictionary', {column_name}, number)
FROM system.numbers FROM system.numbers
LIMIT {elements_count} LIMIT {elements_count}
FORMAR Null; FORMAT Null;
</query> </query>
<query> <query>

View File

@ -1,11 +1,11 @@
0 0
4416930539393268817 1241149650 9
4761183170873013810 4249604106 0
7766709361750702608 3902320246 4 7766709361750702608 3902320246 4
9624464864560415994 1298551497 3
10577349846663553072 1343103100 1 10577349846663553072 1343103100 1
11700034558374135620 1618865725 8 11700034558374135620 1618865725 8
18198135717204167749 1996614413 2
4761183170873013810 4249604106 0
12742043333840853032 1295823179 6 12742043333840853032 1295823179 6
9624464864560415994 1298551497 3
4416930539393268817 1241149650 9
15228578409069794350 2641603337 5
13365811232860260488 3844986530 7 13365811232860260488 3844986530 7
15228578409069794350 2641603337 5
18198135717204167749 1996614413 2

View File

@ -3,4 +3,4 @@ SELECT value FROM system.one ANY LEFT JOIN (SELECT dummy, dummy AS value) js2 US
SELECT value1, value2, sum(number) SELECT value1, value2, sum(number)
FROM (SELECT number, intHash64(number) AS value1 FROM system.numbers LIMIT 10) js1 FROM (SELECT number, intHash64(number) AS value1 FROM system.numbers LIMIT 10) js1
ANY LEFT JOIN (SELECT number, intHash32(number) AS value2 FROM system.numbers LIMIT 10) js2 ANY LEFT JOIN (SELECT number, intHash32(number) AS value2 FROM system.numbers LIMIT 10) js2
USING number GROUP BY value1, value2; USING number GROUP BY value1, value2 ORDER BY value1, value2;

View File

@ -1,5 +1,5 @@
SELECT emptyArrayToSingle(arrayFilter(x -> x != 99, arrayJoin([[1, 2], [99], [4, 5, 6]]))); SELECT emptyArrayToSingle(arrayFilter(x -> x != 99, arrayJoin([[1, 2], [99], [4, 5, 6]])));
SELECT emptyArrayToSingle(emptyArrayString()), emptyArrayToSingle(emptyArrayDate()), emptyArrayToSingle(emptyArrayDateTime()); SELECT emptyArrayToSingle(emptyArrayString()), emptyArrayToSingle(emptyArrayDate()), emptyArrayToSingle(arrayFilter(x -> 0, [now('Europe/Moscow')]));
SELECT SELECT
emptyArrayToSingle(range(number % 3)), emptyArrayToSingle(range(number % 3)),

View File

@ -52,110 +52,110 @@ uniqHLL12
35 54328 35 54328
36 52997 36 52997
uniqHLL12 round(float) uniqHLL12 round(float)
0.125 1
0.5 1
0.05 1
0.143 1
0.056 1
0.048 2
0.083 1
0.25 1
0.1 1
0.028 1
0.027 1 0.027 1
0.028 1
0.031 1 0.031 1
0.067 1
0.037 1 0.037 1
0.045 161 0.048 2
0.125 160 0.05 1
0.5 164 0.056 1
0.05 164 0.067 1
0.143 162 0.083 1
0.091 81 0.1 1
0.056 163 0.125 1
0.048 159 0.143 1
0.083 158 0.25 1
0.25 165 0.5 1
1 159
0.1 164
0.028 160
0.027 161 0.027 161
0.028 160
0.031 164 0.031 164
0.067 160
0.043 159
0.037 160 0.037 160
0.043 159
0.045 161
0.048 159
0.05 164
0.056 163
0.067 160
0.071 161 0.071 161
0.083 158
0.091 81
0.1 164
0.125 160
0.143 162
0.25 165
0.5 164
1 159
0.027 52997
0.028 54328
0.031 54151
0.037 53394
0.043 54620
0.045 54268 0.045 54268
0.125 54011
0.5 55013
0.05 55115
0.143 52353
0.091 26870
0.056 55227
0.048 54370 0.048 54370
0.05 55115
0.056 55227
0.067 53396
0.071 53951
0.083 54554 0.083 54554
0.091 26870
0.1 54138
0.125 54011
0.143 52353
0.25 52912 0.25 52912
0.5 55013
1 54571 1 54571
0.1 54138
0.028 54328
0.027 52997
0.031 54151
0.067 53396
0.043 54620
0.037 53394
0.071 53951
uniqHLL12 round(toFloat32()) uniqHLL12 round(toFloat32())
0.5 1
0.05 1
0.25 1
0.048 2
0.083 1
0.125 1
0.031 1
0.143 1
0.028 1
0.067 1
0.027 1 0.027 1
0.056 1 0.028 1
0.031 1
0.037 1 0.037 1
0.048 2
0.05 1
0.056 1
0.067 1
0.083 1
0.1 1 0.1 1
0.5 164 0.125 1
0.05 164 0.143 1
0.25 165 0.25 1
0.048 159 0.5 1
0.091 81 0.027 161
0.028 160
0.031 164
0.037 160
0.043 159 0.043 159
0.045 161
0.048 159
0.05 164
0.056 163
0.067 160
0.071 161 0.071 161
0.083 158 0.083 158
0.125 160 0.091 81
0.031 164
0.143 162
0.028 160
0.067 160
0.045 161
0.027 161
0.056 163
0.037 160
0.1 164 0.1 164
0.125 160
0.143 162
0.25 165
0.5 164
1 159 1 159
0.5 55013 0.027 52997
0.05 55115 0.028 54328
0.25 52912 0.031 54151
0.048 54370 0.037 53394
0.091 26870
0.043 54620 0.043 54620
0.045 54268
0.048 54370
0.05 55115
0.056 55227
0.067 53396
0.071 53951 0.071 53951
0.083 54554 0.083 54554
0.125 54011 0.091 26870
0.031 54151
0.143 52353
0.028 54328
0.067 53396
0.045 54268
0.027 52997
0.056 55227
0.037 53394
0.1 54138 0.1 54138
0.125 54011
0.143 52353
0.25 52912
0.5 55013
1 54571 1 54571
uniqHLL12 IPv4NumToString uniqHLL12 IPv4NumToString
1 1 1 1
@ -425,428 +425,428 @@ uniqCombined(20)
35 54054 35 54054
36 54054 36 54054
uniqCombined(round(float)) uniqCombined(round(float))
0.125 1
0.5 1
0.05 1
0.143 1
0.056 1
0.048 2
0.083 1
0.25 1
0.1 1
0.028 1
0.027 1 0.027 1
0.028 1
0.031 1 0.031 1
0.067 1
0.037 1 0.037 1
0.045 162 0.048 2
0.125 163 0.05 1
0.5 162 0.056 1
0.05 162 0.067 1
0.143 162 0.083 1
0.091 81 0.1 1
0.056 162 0.125 1
0.048 162 0.143 1
0.083 163 0.25 1
0.25 162 0.5 1
1 162
0.1 163
0.028 162
0.027 162 0.027 162
0.028 162
0.031 162 0.031 162
0.067 162
0.043 162
0.037 162 0.037 162
0.043 162
0.045 162
0.048 162
0.05 162
0.056 162
0.067 162
0.071 162 0.071 162
0.045 54117 0.083 163
0.125 54213 0.091 81
0.5 54056 0.1 163
0.05 53923 0.125 163
0.143 54129 0.143 162
0.091 26975 0.25 162
0.056 54129 0.5 162
0.048 53958 1 162
0.083 54064
0.25 53999
1 53901
0.1 53853
0.028 53931
0.027 53982 0.027 53982
0.028 53931
0.031 53948 0.031 53948
0.067 53997
0.043 54150
0.037 54047 0.037 54047
0.043 54150
0.045 54117
0.048 53958
0.05 53923
0.056 54129
0.067 53997
0.071 53963 0.071 53963
0.083 54064
0.091 26975
0.1 53853
0.125 54213
0.143 54129
0.25 53999
0.5 54056
1 53901
uniqCombined(12)(round(float)) uniqCombined(12)(round(float))
0.125 1
0.5 1
0.05 1
0.143 1
0.056 1
0.048 2
0.083 1
0.25 1
0.1 1
0.028 1
0.027 1 0.027 1
0.028 1
0.031 1 0.031 1
0.067 1
0.037 1 0.037 1
0.045 162 0.048 2
0.125 163 0.05 1
0.5 162 0.056 1
0.05 162 0.067 1
0.143 162 0.083 1
0.091 81 0.1 1
0.056 162 0.125 1
0.048 162 0.143 1
0.083 163 0.25 1
0.25 162 0.5 1
1 162
0.1 163
0.028 162
0.027 162 0.027 162
0.028 162
0.031 162 0.031 162
0.067 162
0.043 162
0.037 162 0.037 162
0.043 162
0.045 162
0.048 162
0.05 162
0.056 162
0.067 162
0.071 162 0.071 162
0.045 53928 0.083 163
0.125 52275 0.091 81
0.5 53721 0.1 163
0.05 54123 0.125 163
0.143 54532 0.143 162
0.091 26931 0.25 162
0.056 55120 0.5 162
0.048 53293 1 162
0.083 54428
0.25 53226
1 54708
0.1 53417
0.028 54635
0.027 53155 0.027 53155
0.028 54635
0.031 53763 0.031 53763
0.067 53188
0.043 53827
0.037 53920 0.037 53920
0.043 53827
0.045 53928
0.048 53293
0.05 54123
0.056 55120
0.067 53188
0.071 53409 0.071 53409
0.083 54428
0.091 26931
0.1 53417
0.125 52275
0.143 54532
0.25 53226
0.5 53721
1 54708
uniqCombined(17)(round(float)) uniqCombined(17)(round(float))
0.125 1
0.5 1
0.05 1
0.143 1
0.056 1
0.048 2
0.083 1
0.25 1
0.1 1
0.028 1
0.027 1 0.027 1
0.028 1
0.031 1 0.031 1
0.067 1
0.037 1 0.037 1
0.045 162 0.048 2
0.125 163 0.05 1
0.5 162 0.056 1
0.05 162 0.067 1
0.143 162 0.083 1
0.091 81 0.1 1
0.056 162 0.125 1
0.048 162 0.143 1
0.083 163 0.25 1
0.25 162 0.5 1
1 162
0.1 163
0.028 162
0.027 162 0.027 162
0.028 162
0.031 162 0.031 162
0.067 162
0.043 162
0.037 162 0.037 162
0.043 162
0.045 162
0.048 162
0.05 162
0.056 162
0.067 162
0.071 162 0.071 162
0.083 163
0.091 81
0.1 163
0.125 163
0.143 162
0.25 162
0.5 162
1 162
0.027 53982
0.028 53931
0.031 53948
0.037 54047
0.043 54150
0.045 54117 0.045 54117
0.125 54213
0.5 54056
0.05 53923
0.143 54129
0.091 26975
0.056 54129
0.048 53958 0.048 53958
0.05 53923
0.056 54129
0.067 53997
0.071 53963
0.083 54064 0.083 54064
0.091 26975
0.1 53853
0.125 54213
0.143 54129
0.25 53999 0.25 53999
0.5 54056
1 53901 1 53901
0.1 53853
0.028 53931
0.027 53982
0.031 53948
0.067 53997
0.043 54150
0.037 54047
0.071 53963
uniqCombined(20)(round(float)) uniqCombined(20)(round(float))
0.125 1
0.5 1
0.05 1
0.143 1
0.056 1
0.048 2
0.083 1
0.25 1
0.1 1
0.028 1
0.027 1 0.027 1
0.028 1
0.031 1 0.031 1
0.067 1
0.037 1 0.037 1
0.045 162 0.048 2
0.125 163 0.05 1
0.5 162 0.056 1
0.05 162 0.067 1
0.143 162 0.083 1
0.091 81 0.1 1
0.056 162 0.125 1
0.048 162 0.143 1
0.083 163 0.25 1
0.25 162 0.5 1
1 162
0.1 163
0.028 162
0.027 162 0.027 162
0.028 162
0.031 162 0.031 162
0.067 162
0.043 162
0.037 162 0.037 162
0.043 162
0.045 162
0.048 162
0.05 162
0.056 162
0.067 162
0.071 162 0.071 162
0.045 54054 0.083 163
0.125 54053 0.091 81
0.5 54054 0.1 163
0.05 54053 0.125 163
0.143 54054 0.143 162
0.091 27027 0.25 162
0.056 54054 0.5 162
0.048 54053 1 162
0.083 54055
0.25 54054
1 54054
0.1 54053
0.028 54054
0.027 54054 0.027 54054
0.028 54054
0.031 54054 0.031 54054
0.067 54054
0.043 54053
0.037 54053 0.037 54053
0.043 54053
0.045 54054
0.048 54053
0.05 54053
0.056 54054
0.067 54054
0.071 54054 0.071 54054
0.083 54055
0.091 27027
0.1 54053
0.125 54053
0.143 54054
0.25 54054
0.5 54054
1 54054
uniqCombined(X)(round(toFloat32())) uniqCombined(X)(round(toFloat32()))
0.5 1
0.05 1
0.25 1
0.048 2
0.083 1
0.125 1
0.031 1
0.143 1
0.028 1
0.067 1
0.027 1 0.027 1
0.056 1 0.028 1
0.031 1
0.037 1 0.037 1
0.048 2
0.05 1
0.056 1
0.067 1
0.083 1
0.1 1 0.1 1
0.5 162 0.125 1
0.05 162 0.143 1
0.25 162 0.25 1
0.048 162 0.5 1
0.091 81 0.027 162
0.028 162
0.031 162
0.037 162
0.043 162 0.043 162
0.045 162
0.048 162
0.05 162
0.056 162
0.067 162
0.071 162 0.071 162
0.083 163 0.083 163
0.125 163 0.091 81
0.031 162
0.143 162
0.028 162
0.067 162
0.045 162
0.027 162
0.056 162
0.037 162
0.1 163 0.1 163
0.125 163
0.143 162
0.25 162
0.5 162
1 162 1 162
0.5 54056 0.027 53982
0.05 53923 0.028 53931
0.25 53999 0.031 53948
0.048 53958 0.037 54047
0.091 26975
0.043 54150 0.043 54150
0.045 54117
0.048 53958
0.05 53923
0.056 54129
0.067 53997
0.071 53963 0.071 53963
0.083 54064 0.083 54064
0.125 54213 0.091 26975
0.031 53948
0.143 54129
0.028 53931
0.067 53997
0.045 54117
0.027 53982
0.056 54129
0.037 54047
0.1 53853 0.1 53853
0.125 54213
0.143 54129
0.25 53999
0.5 54056
1 53901 1 53901
uniqCombined(12)(round(toFloat32())) uniqCombined(12)(round(toFloat32()))
0.5 1
0.05 1
0.25 1
0.048 2
0.083 1
0.125 1
0.031 1
0.143 1
0.028 1
0.067 1
0.027 1 0.027 1
0.056 1 0.028 1
0.031 1
0.037 1 0.037 1
0.048 2
0.05 1
0.056 1
0.067 1
0.083 1
0.1 1 0.1 1
0.5 162 0.125 1
0.05 162 0.143 1
0.25 162 0.25 1
0.048 162 0.5 1
0.091 81 0.027 162
0.028 162
0.031 162
0.037 162
0.043 162 0.043 162
0.045 162
0.048 162
0.05 162
0.056 162
0.067 162
0.071 162 0.071 162
0.083 163 0.083 163
0.125 163 0.091 81
0.031 162
0.143 162
0.028 162
0.067 162
0.045 162
0.027 162
0.056 162
0.037 162
0.1 163 0.1 163
0.125 163
0.143 162
0.25 162
0.5 162
1 162 1 162
0.5 53721 0.027 53155
0.05 54123 0.028 54635
0.25 53226 0.031 53763
0.048 53293 0.037 53920
0.091 26931
0.043 53827 0.043 53827
0.045 53928
0.048 53293
0.05 54123
0.056 55120
0.067 53188
0.071 53409 0.071 53409
0.083 54428 0.083 54428
0.125 52275 0.091 26931
0.031 53763
0.143 54532
0.028 54635
0.067 53188
0.045 53928
0.027 53155
0.056 55120
0.037 53920
0.1 53417 0.1 53417
0.125 52275
0.143 54532
0.25 53226
0.5 53721
1 54708 1 54708
uniqCombined(17)(round(toFloat32())) uniqCombined(17)(round(toFloat32()))
0.5 1
0.05 1
0.25 1
0.048 2
0.083 1
0.125 1
0.031 1
0.143 1
0.028 1
0.067 1
0.027 1 0.027 1
0.056 1 0.028 1
0.031 1
0.037 1 0.037 1
0.048 2
0.05 1
0.056 1
0.067 1
0.083 1
0.1 1 0.1 1
0.5 162 0.125 1
0.05 162 0.143 1
0.25 162 0.25 1
0.048 162 0.5 1
0.091 81 0.027 162
0.028 162
0.031 162
0.037 162
0.043 162 0.043 162
0.045 162
0.048 162
0.05 162
0.056 162
0.067 162
0.071 162 0.071 162
0.083 163 0.083 163
0.125 163 0.091 81
0.031 162
0.143 162
0.028 162
0.067 162
0.045 162
0.027 162
0.056 162
0.037 162
0.1 163 0.1 163
0.125 163
0.143 162
0.25 162
0.5 162
1 162 1 162
0.5 54056 0.027 53982
0.05 53923 0.028 53931
0.25 53999 0.031 53948
0.048 53958 0.037 54047
0.091 26975
0.043 54150 0.043 54150
0.045 54117
0.048 53958
0.05 53923
0.056 54129
0.067 53997
0.071 53963 0.071 53963
0.083 54064 0.083 54064
0.125 54213 0.091 26975
0.031 53948
0.143 54129
0.028 53931
0.067 53997
0.045 54117
0.027 53982
0.056 54129
0.037 54047
0.1 53853 0.1 53853
0.125 54213
0.143 54129
0.25 53999
0.5 54056
1 53901 1 53901
uniqCombined(20)(round(toFloat32())) uniqCombined(20)(round(toFloat32()))
0.5 1
0.05 1
0.25 1
0.048 2
0.083 1
0.125 1
0.031 1
0.143 1
0.028 1
0.067 1
0.027 1 0.027 1
0.056 1 0.028 1
0.031 1
0.037 1 0.037 1
0.048 2
0.05 1
0.056 1
0.067 1
0.083 1
0.1 1 0.1 1
0.5 162 0.125 1
0.05 162 0.143 1
0.25 162 0.25 1
0.048 162 0.5 1
0.091 81 0.027 162
0.028 162
0.031 162
0.037 162
0.043 162 0.043 162
0.045 162
0.048 162
0.05 162
0.056 162
0.067 162
0.071 162 0.071 162
0.083 163 0.083 163
0.125 163 0.091 81
0.031 162
0.143 162
0.028 162
0.067 162
0.045 162
0.027 162
0.056 162
0.037 162
0.1 163 0.1 163
0.125 163
0.143 162
0.25 162
0.5 162
1 162 1 162
0.5 54054 0.027 54054
0.05 54053 0.028 54054
0.25 54054 0.031 54054
0.048 54053 0.037 54053
0.091 27027
0.043 54053 0.043 54053
0.045 54054
0.048 54053
0.05 54053
0.056 54054
0.067 54054
0.071 54054 0.071 54054
0.083 54055 0.083 54055
0.125 54053 0.091 27027
0.031 54054
0.143 54054
0.028 54054
0.067 54054
0.045 54054
0.027 54054
0.056 54054
0.037 54053
0.1 54053 0.1 54053
0.125 54053
0.143 54054
0.25 54054
0.5 54054
1 54054 1 54054
uniqCombined(Z)(IPv4NumToString) uniqCombined(Z)(IPv4NumToString)
1 1 1 1

View File

@ -2,27 +2,27 @@
SELECT 'uniqHLL12'; SELECT 'uniqHLL12';
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqHLL12 round(float)'; SELECT 'uniqHLL12 round(float)';
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqHLL12 round(toFloat32())'; SELECT 'uniqHLL12 round(toFloat32())';
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqHLL12(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqHLL12 IPv4NumToString'; SELECT 'uniqHLL12 IPv4NumToString';
SELECT Y, uniqHLL12(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqHLL12(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqHLL12(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqHLL12(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqHLL12(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqHLL12(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqHLL12 remote()'; SELECT 'uniqHLL12 remote()';
@ -32,99 +32,99 @@ SELECT uniqHLL12(dummy) FROM remote('127.0.0.{2,3}', system.one);
SELECT 'uniqCombined'; SELECT 'uniqCombined';
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(12)'; SELECT 'uniqCombined(12)';
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(17)'; SELECT 'uniqCombined(17)';
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(20)'; SELECT 'uniqCombined(20)';
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(round(float))'; SELECT 'uniqCombined(round(float))';
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(12)(round(float))'; SELECT 'uniqCombined(12)(round(float))';
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(17)(round(float))'; SELECT 'uniqCombined(17)(round(float))';
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(20)(round(float))'; SELECT 'uniqCombined(20)(round(float))';
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(1/(1 + (3*X*X - 7*X + 11) % 37), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(X)(round(toFloat32()))'; SELECT 'uniqCombined(X)(round(toFloat32()))';
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(12)(round(toFloat32()))'; SELECT 'uniqCombined(12)(round(toFloat32()))';
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(12)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(17)(round(toFloat32()))'; SELECT 'uniqCombined(17)(round(toFloat32()))';
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(17)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(20)(round(toFloat32()))'; SELECT 'uniqCombined(20)(round(toFloat32()))';
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(20)(X) FROM (SELECT number AS X, round(toFloat32(1/(1 + (3*X*X - 7*X + 11) % 37)), 3) AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(Z)(IPv4NumToString)'; SELECT 'uniqCombined(Z)(IPv4NumToString)';
SELECT Y, uniqCombined(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(12)(IPv4NumToString)'; SELECT 'uniqCombined(12)(IPv4NumToString)';
SELECT Y, uniqCombined(12)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(12)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(12)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(12)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(12)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(12)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(17)(IPv4NumToString)'; SELECT 'uniqCombined(17)(IPv4NumToString)';
SELECT Y, uniqCombined(17)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(17)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(17)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(17)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(17)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(17)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined(20)(IPv4NumToString)'; SELECT 'uniqCombined(20)(IPv4NumToString)';
SELECT Y, uniqCombined(20)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y; SELECT Y, uniqCombined(20)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 15) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(20)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y; SELECT Y, uniqCombined(20)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 3000) GROUP BY Y ORDER BY Y;
SELECT Y, uniqCombined(20)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y; SELECT Y, uniqCombined(20)(Z) FROM (SELECT number AS X, IPv4NumToString(toUInt32(X)) AS Z, (3*X*X - 7*X + 11) % 37 AS Y FROM system.numbers LIMIT 1000000) GROUP BY Y ORDER BY Y;
SELECT 'uniqCombined remote()'; SELECT 'uniqCombined remote()';

View File

@ -20,51 +20,51 @@
170.21 MiB 170.21 MiB 170.21 MiB 170.21 MiB 170.21 MiB 170.21 MiB
462.69 MiB 462.69 MiB 462.69 MiB 462.69 MiB 462.69 MiB 462.69 MiB
1.23 GiB 1.23 GiB 1.23 GiB 1.23 GiB 1.23 GiB 1.23 GiB
3.34 GiB 3.34 GiB -2.00 GiB 3.34 GiB 3.34 GiB 2.00 GiB
9.08 GiB 9.08 GiB -2.00 GiB 9.08 GiB 9.08 GiB 2.00 GiB
24.67 GiB 24.67 GiB -2.00 GiB 24.67 GiB 24.67 GiB 2.00 GiB
67.06 GiB 67.06 GiB -2.00 GiB 67.06 GiB 67.06 GiB 2.00 GiB
182.29 GiB 182.29 GiB -2.00 GiB 182.29 GiB 182.29 GiB 2.00 GiB
495.51 GiB 495.51 GiB -2.00 GiB 495.51 GiB 495.51 GiB 2.00 GiB
1.32 TiB 1.32 TiB -2.00 GiB 1.32 TiB 1.32 TiB 2.00 GiB
3.58 TiB 3.58 TiB -2.00 GiB 3.58 TiB 3.58 TiB 2.00 GiB
9.72 TiB 9.72 TiB -2.00 GiB 9.72 TiB 9.72 TiB 2.00 GiB
26.42 TiB 26.42 TiB -2.00 GiB 26.42 TiB 26.42 TiB 2.00 GiB
71.82 TiB 71.82 TiB -2.00 GiB 71.82 TiB 71.82 TiB 2.00 GiB
195.22 TiB 195.22 TiB -2.00 GiB 195.22 TiB 195.22 TiB 2.00 GiB
530.66 TiB 530.66 TiB -2.00 GiB 530.66 TiB 530.66 TiB 2.00 GiB
1.41 PiB 1.41 PiB -2.00 GiB 1.41 PiB 1.41 PiB 2.00 GiB
3.83 PiB 3.83 PiB -2.00 GiB 3.83 PiB 3.83 PiB 2.00 GiB
10.41 PiB 10.41 PiB -2.00 GiB 10.41 PiB 10.41 PiB 2.00 GiB
28.29 PiB 28.29 PiB -2.00 GiB 28.29 PiB 28.29 PiB 2.00 GiB
76.91 PiB 76.91 PiB -2.00 GiB 76.91 PiB 76.91 PiB 2.00 GiB
209.06 PiB 209.06 PiB -2.00 GiB 209.06 PiB 209.06 PiB 2.00 GiB
568.30 PiB 568.30 PiB -2.00 GiB 568.30 PiB 568.30 PiB 2.00 GiB
1.51 EiB 1.51 EiB -2.00 GiB 1.51 EiB 1.51 EiB 2.00 GiB
4.10 EiB 4.10 EiB -2.00 GiB 4.10 EiB 4.10 EiB 2.00 GiB
11.15 EiB 11.15 EiB -2.00 GiB 11.15 EiB 11.15 EiB 2.00 GiB
30.30 EiB 0.00 B -2.00 GiB 30.30 EiB 16.00 EiB 2.00 GiB
82.37 EiB 0.00 B -2.00 GiB 82.37 EiB 16.00 EiB 2.00 GiB
223.89 EiB 0.00 B -2.00 GiB 223.89 EiB 16.00 EiB 2.00 GiB
608.60 EiB 0.00 B -2.00 GiB 608.60 EiB 16.00 EiB 2.00 GiB
1.62 ZiB 0.00 B -2.00 GiB 1.62 ZiB 16.00 EiB 2.00 GiB
4.39 ZiB 0.00 B -2.00 GiB 4.39 ZiB 16.00 EiB 2.00 GiB
11.94 ZiB 0.00 B -2.00 GiB 11.94 ZiB 16.00 EiB 2.00 GiB
32.45 ZiB 0.00 B -2.00 GiB 32.45 ZiB 16.00 EiB 2.00 GiB
88.21 ZiB 0.00 B -2.00 GiB 88.21 ZiB 16.00 EiB 2.00 GiB
239.77 ZiB 0.00 B -2.00 GiB 239.77 ZiB 16.00 EiB 2.00 GiB
651.77 ZiB 0.00 B -2.00 GiB 651.77 ZiB 16.00 EiB 2.00 GiB
1.73 YiB 0.00 B -2.00 GiB 1.73 YiB 16.00 EiB 2.00 GiB
4.70 YiB 0.00 B -2.00 GiB 4.70 YiB 16.00 EiB 2.00 GiB
12.78 YiB 0.00 B -2.00 GiB 12.78 YiB 16.00 EiB 2.00 GiB
34.75 YiB 0.00 B -2.00 GiB 34.75 YiB 16.00 EiB 2.00 GiB
94.46 YiB 0.00 B -2.00 GiB 94.46 YiB 16.00 EiB 2.00 GiB
256.78 YiB 0.00 B -2.00 GiB 256.78 YiB 16.00 EiB 2.00 GiB
698.00 YiB 0.00 B -2.00 GiB 698.00 YiB 16.00 EiB 2.00 GiB
1897.37 YiB 0.00 B -2.00 GiB 1897.37 YiB 16.00 EiB 2.00 GiB
5157.59 YiB 0.00 B -2.00 GiB 5157.59 YiB 16.00 EiB 2.00 GiB
14019.80 YiB 0.00 B -2.00 GiB 14019.80 YiB 16.00 EiB 2.00 GiB
38109.75 YiB 0.00 B -2.00 GiB 38109.75 YiB 16.00 EiB 2.00 GiB
103593.05 YiB 0.00 B -2.00 GiB 103593.05 YiB 16.00 EiB 2.00 GiB
281595.11 YiB 0.00 B -2.00 GiB 281595.11 YiB 16.00 EiB 2.00 GiB
765454.88 YiB 0.00 B -2.00 GiB 765454.88 YiB 16.00 EiB 2.00 GiB

View File

@ -1,4 +1,4 @@
WITH round(exp(number), 6) AS x, toUInt64(x) AS y, toInt32(x) AS z WITH round(exp(number), 6) AS x, x > 0xFFFFFFFFFFFFFFFF ? 0xFFFFFFFFFFFFFFFF : toUInt64(x) AS y, x > 0x7FFFFFFF ? 0x7FFFFFFF : toInt32(x) AS z
SELECT formatReadableSize(x), formatReadableSize(y), formatReadableSize(z) SELECT formatReadableSize(x), formatReadableSize(y), formatReadableSize(z)
FROM system.numbers FROM system.numbers
LIMIT 70; LIMIT 70;

View File

@ -1 +1,124 @@
PASSED 0 0.000000000 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1
0 -1.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 1.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 18446744073709551616.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 9223372036854775808.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 -9223372036854775808.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 9223372036854775808.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 2251799813685248.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 4503599627370496.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 9007199254740991.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 9007199254740994.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 -9007199254740991.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 -9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 -9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 -9007199254740994.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 104.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 -4503599627370496.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 -0.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 0.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 -1.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 1.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 2251799813685247.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 2251799813685248.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 1152921504606846976.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
0 -1152921504606846976.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 -9223372036854786048.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
0 9223372036854786048.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 0.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 -1.000000000 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1
-1 1.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 18446744073709551616.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 9223372036854775808.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 -9223372036854775808.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 9223372036854775808.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 2251799813685248.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 4503599627370496.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 9007199254740991.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 9007199254740994.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 -9007199254740991.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 -9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 -9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 -9007199254740994.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 104.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 -4503599627370496.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 -0.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 0.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 -1.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 1.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 2251799813685247.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 2251799813685248.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 1152921504606846976.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
-1 -1152921504606846976.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 -9223372036854786048.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
-1 9223372036854786048.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 0.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 -1.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 1.000000000 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1
1 18446744073709551616.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 9223372036854775808.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 -9223372036854775808.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 9223372036854775808.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 2251799813685248.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 4503599627370496.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 9007199254740991.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 9007199254740994.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 -9007199254740991.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 -9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 -9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 -9007199254740994.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 104.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 -4503599627370496.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 -0.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 0.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 -1.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 1.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 9007199254740992.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 2251799813685247.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 2251799813685248.500000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 1152921504606846976.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
1 -1152921504606846976.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 -9223372036854786048.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
1 9223372036854786048.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
18446744073709551615 0.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -1.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 1.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 18446744073709551616.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1
18446744073709551615 9223372036854775808.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -9223372036854775808.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 9223372036854775808.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 2251799813685248.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 4503599627370496.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 9007199254740991.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 9007199254740994.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -9007199254740991.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -9007199254740994.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 104.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -4503599627370496.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -0.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 0.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -1.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 1.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 9007199254740992.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 2251799813685247.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 2251799813685248.500000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 1152921504606846976.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -1152921504606846976.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 -9223372036854786048.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
18446744073709551615 9223372036854786048.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
9223372036854775808 0.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
9223372036854775808 -1.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
9223372036854775808 1.000000000 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0
9223372036854775808 18446744073709551616.000000000 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1

View File

@ -1,9 +0,0 @@
#!/usr/bin/env bash
CURDIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
# shellcheck source=../shell_config.sh
. "$CURDIR"/../shell_config.sh
# We should have correct env vars from shell_config.sh to run this test
python3 "$CURDIR"/00411_long_accurate_number_comparison.python float

View File

@ -0,0 +1,127 @@
-- The results are different than in Python. That's why this file is genearated and the reference is edited instead of using the Python script.
-- Example: in ClickHouse, 9223372036854775808.0 != 9223372036854775808.
SELECT '0', '0.000000000', 0 = 0.000000000, 0 != 0.000000000, 0 < 0.000000000, 0 <= 0.000000000, 0 > 0.000000000, 0 >= 0.000000000, 0.000000000 = 0, 0.000000000 != 0, 0.000000000 < 0, 0.000000000 <= 0, 0.000000000 > 0, 0.000000000 >= 0 , toUInt8(0) = 0.000000000, toUInt8(0) != 0.000000000, toUInt8(0) < 0.000000000, toUInt8(0) <= 0.000000000, toUInt8(0) > 0.000000000, toUInt8(0) >= 0.000000000, 0.000000000 = toUInt8(0), 0.000000000 != toUInt8(0), 0.000000000 < toUInt8(0), 0.000000000 <= toUInt8(0), 0.000000000 > toUInt8(0), 0.000000000 >= toUInt8(0) , toInt8(0) = 0.000000000, toInt8(0) != 0.000000000, toInt8(0) < 0.000000000, toInt8(0) <= 0.000000000, toInt8(0) > 0.000000000, toInt8(0) >= 0.000000000, 0.000000000 = toInt8(0), 0.000000000 != toInt8(0), 0.000000000 < toInt8(0), 0.000000000 <= toInt8(0), 0.000000000 > toInt8(0), 0.000000000 >= toInt8(0) , toUInt16(0) = 0.000000000, toUInt16(0) != 0.000000000, toUInt16(0) < 0.000000000, toUInt16(0) <= 0.000000000, toUInt16(0) > 0.000000000, toUInt16(0) >= 0.000000000, 0.000000000 = toUInt16(0), 0.000000000 != toUInt16(0), 0.000000000 < toUInt16(0), 0.000000000 <= toUInt16(0), 0.000000000 > toUInt16(0), 0.000000000 >= toUInt16(0) , toInt16(0) = 0.000000000, toInt16(0) != 0.000000000, toInt16(0) < 0.000000000, toInt16(0) <= 0.000000000, toInt16(0) > 0.000000000, toInt16(0) >= 0.000000000, 0.000000000 = toInt16(0), 0.000000000 != toInt16(0), 0.000000000 < toInt16(0), 0.000000000 <= toInt16(0), 0.000000000 > toInt16(0), 0.000000000 >= toInt16(0) , toUInt32(0) = 0.000000000, toUInt32(0) != 0.000000000, toUInt32(0) < 0.000000000, toUInt32(0) <= 0.000000000, toUInt32(0) > 0.000000000, toUInt32(0) >= 0.000000000, 0.000000000 = toUInt32(0), 0.000000000 != toUInt32(0), 0.000000000 < toUInt32(0), 0.000000000 <= toUInt32(0), 0.000000000 > toUInt32(0), 0.000000000 >= toUInt32(0) , toInt32(0) = 0.000000000, toInt32(0) != 0.000000000, toInt32(0) < 0.000000000, toInt32(0) <= 0.000000000, toInt32(0) > 0.000000000, toInt32(0) >= 0.000000000, 0.000000000 = toInt32(0), 0.000000000 != toInt32(0), 0.000000000 < toInt32(0), 0.000000000 <= toInt32(0), 0.000000000 > toInt32(0), 0.000000000 >= toInt32(0) , toUInt64(0) = 0.000000000, toUInt64(0) != 0.000000000, toUInt64(0) < 0.000000000, toUInt64(0) <= 0.000000000, toUInt64(0) > 0.000000000, toUInt64(0) >= 0.000000000, 0.000000000 = toUInt64(0), 0.000000000 != toUInt64(0), 0.000000000 < toUInt64(0), 0.000000000 <= toUInt64(0), 0.000000000 > toUInt64(0), 0.000000000 >= toUInt64(0) , toInt64(0) = 0.000000000, toInt64(0) != 0.000000000, toInt64(0) < 0.000000000, toInt64(0) <= 0.000000000, toInt64(0) > 0.000000000, toInt64(0) >= 0.000000000, 0.000000000 = toInt64(0), 0.000000000 != toInt64(0), 0.000000000 < toInt64(0), 0.000000000 <= toInt64(0), 0.000000000 > toInt64(0), 0.000000000 >= toInt64(0) ;
SELECT '0', '-1.000000000', 0 = -1.000000000, 0 != -1.000000000, 0 < -1.000000000, 0 <= -1.000000000, 0 > -1.000000000, 0 >= -1.000000000, -1.000000000 = 0, -1.000000000 != 0, -1.000000000 < 0, -1.000000000 <= 0, -1.000000000 > 0, -1.000000000 >= 0 , toUInt8(0) = -1.000000000, toUInt8(0) != -1.000000000, toUInt8(0) < -1.000000000, toUInt8(0) <= -1.000000000, toUInt8(0) > -1.000000000, toUInt8(0) >= -1.000000000, -1.000000000 = toUInt8(0), -1.000000000 != toUInt8(0), -1.000000000 < toUInt8(0), -1.000000000 <= toUInt8(0), -1.000000000 > toUInt8(0), -1.000000000 >= toUInt8(0) , toInt8(0) = -1.000000000, toInt8(0) != -1.000000000, toInt8(0) < -1.000000000, toInt8(0) <= -1.000000000, toInt8(0) > -1.000000000, toInt8(0) >= -1.000000000, -1.000000000 = toInt8(0), -1.000000000 != toInt8(0), -1.000000000 < toInt8(0), -1.000000000 <= toInt8(0), -1.000000000 > toInt8(0), -1.000000000 >= toInt8(0) , toUInt16(0) = -1.000000000, toUInt16(0) != -1.000000000, toUInt16(0) < -1.000000000, toUInt16(0) <= -1.000000000, toUInt16(0) > -1.000000000, toUInt16(0) >= -1.000000000, -1.000000000 = toUInt16(0), -1.000000000 != toUInt16(0), -1.000000000 < toUInt16(0), -1.000000000 <= toUInt16(0), -1.000000000 > toUInt16(0), -1.000000000 >= toUInt16(0) , toInt16(0) = -1.000000000, toInt16(0) != -1.000000000, toInt16(0) < -1.000000000, toInt16(0) <= -1.000000000, toInt16(0) > -1.000000000, toInt16(0) >= -1.000000000, -1.000000000 = toInt16(0), -1.000000000 != toInt16(0), -1.000000000 < toInt16(0), -1.000000000 <= toInt16(0), -1.000000000 > toInt16(0), -1.000000000 >= toInt16(0) , toUInt32(0) = -1.000000000, toUInt32(0) != -1.000000000, toUInt32(0) < -1.000000000, toUInt32(0) <= -1.000000000, toUInt32(0) > -1.000000000, toUInt32(0) >= -1.000000000, -1.000000000 = toUInt32(0), -1.000000000 != toUInt32(0), -1.000000000 < toUInt32(0), -1.000000000 <= toUInt32(0), -1.000000000 > toUInt32(0), -1.000000000 >= toUInt32(0) , toInt32(0) = -1.000000000, toInt32(0) != -1.000000000, toInt32(0) < -1.000000000, toInt32(0) <= -1.000000000, toInt32(0) > -1.000000000, toInt32(0) >= -1.000000000, -1.000000000 = toInt32(0), -1.000000000 != toInt32(0), -1.000000000 < toInt32(0), -1.000000000 <= toInt32(0), -1.000000000 > toInt32(0), -1.000000000 >= toInt32(0) , toUInt64(0) = -1.000000000, toUInt64(0) != -1.000000000, toUInt64(0) < -1.000000000, toUInt64(0) <= -1.000000000, toUInt64(0) > -1.000000000, toUInt64(0) >= -1.000000000, -1.000000000 = toUInt64(0), -1.000000000 != toUInt64(0), -1.000000000 < toUInt64(0), -1.000000000 <= toUInt64(0), -1.000000000 > toUInt64(0), -1.000000000 >= toUInt64(0) , toInt64(0) = -1.000000000, toInt64(0) != -1.000000000, toInt64(0) < -1.000000000, toInt64(0) <= -1.000000000, toInt64(0) > -1.000000000, toInt64(0) >= -1.000000000, -1.000000000 = toInt64(0), -1.000000000 != toInt64(0), -1.000000000 < toInt64(0), -1.000000000 <= toInt64(0), -1.000000000 > toInt64(0), -1.000000000 >= toInt64(0) ;
SELECT '0', '1.000000000', 0 = 1.000000000, 0 != 1.000000000, 0 < 1.000000000, 0 <= 1.000000000, 0 > 1.000000000, 0 >= 1.000000000, 1.000000000 = 0, 1.000000000 != 0, 1.000000000 < 0, 1.000000000 <= 0, 1.000000000 > 0, 1.000000000 >= 0 , toUInt8(0) = 1.000000000, toUInt8(0) != 1.000000000, toUInt8(0) < 1.000000000, toUInt8(0) <= 1.000000000, toUInt8(0) > 1.000000000, toUInt8(0) >= 1.000000000, 1.000000000 = toUInt8(0), 1.000000000 != toUInt8(0), 1.000000000 < toUInt8(0), 1.000000000 <= toUInt8(0), 1.000000000 > toUInt8(0), 1.000000000 >= toUInt8(0) , toInt8(0) = 1.000000000, toInt8(0) != 1.000000000, toInt8(0) < 1.000000000, toInt8(0) <= 1.000000000, toInt8(0) > 1.000000000, toInt8(0) >= 1.000000000, 1.000000000 = toInt8(0), 1.000000000 != toInt8(0), 1.000000000 < toInt8(0), 1.000000000 <= toInt8(0), 1.000000000 > toInt8(0), 1.000000000 >= toInt8(0) , toUInt16(0) = 1.000000000, toUInt16(0) != 1.000000000, toUInt16(0) < 1.000000000, toUInt16(0) <= 1.000000000, toUInt16(0) > 1.000000000, toUInt16(0) >= 1.000000000, 1.000000000 = toUInt16(0), 1.000000000 != toUInt16(0), 1.000000000 < toUInt16(0), 1.000000000 <= toUInt16(0), 1.000000000 > toUInt16(0), 1.000000000 >= toUInt16(0) , toInt16(0) = 1.000000000, toInt16(0) != 1.000000000, toInt16(0) < 1.000000000, toInt16(0) <= 1.000000000, toInt16(0) > 1.000000000, toInt16(0) >= 1.000000000, 1.000000000 = toInt16(0), 1.000000000 != toInt16(0), 1.000000000 < toInt16(0), 1.000000000 <= toInt16(0), 1.000000000 > toInt16(0), 1.000000000 >= toInt16(0) , toUInt32(0) = 1.000000000, toUInt32(0) != 1.000000000, toUInt32(0) < 1.000000000, toUInt32(0) <= 1.000000000, toUInt32(0) > 1.000000000, toUInt32(0) >= 1.000000000, 1.000000000 = toUInt32(0), 1.000000000 != toUInt32(0), 1.000000000 < toUInt32(0), 1.000000000 <= toUInt32(0), 1.000000000 > toUInt32(0), 1.000000000 >= toUInt32(0) , toInt32(0) = 1.000000000, toInt32(0) != 1.000000000, toInt32(0) < 1.000000000, toInt32(0) <= 1.000000000, toInt32(0) > 1.000000000, toInt32(0) >= 1.000000000, 1.000000000 = toInt32(0), 1.000000000 != toInt32(0), 1.000000000 < toInt32(0), 1.000000000 <= toInt32(0), 1.000000000 > toInt32(0), 1.000000000 >= toInt32(0) , toUInt64(0) = 1.000000000, toUInt64(0) != 1.000000000, toUInt64(0) < 1.000000000, toUInt64(0) <= 1.000000000, toUInt64(0) > 1.000000000, toUInt64(0) >= 1.000000000, 1.000000000 = toUInt64(0), 1.000000000 != toUInt64(0), 1.000000000 < toUInt64(0), 1.000000000 <= toUInt64(0), 1.000000000 > toUInt64(0), 1.000000000 >= toUInt64(0) , toInt64(0) = 1.000000000, toInt64(0) != 1.000000000, toInt64(0) < 1.000000000, toInt64(0) <= 1.000000000, toInt64(0) > 1.000000000, toInt64(0) >= 1.000000000, 1.000000000 = toInt64(0), 1.000000000 != toInt64(0), 1.000000000 < toInt64(0), 1.000000000 <= toInt64(0), 1.000000000 > toInt64(0), 1.000000000 >= toInt64(0) ;
SELECT '0', '18446744073709551616.000000000', 0 = 18446744073709551616.000000000, 0 != 18446744073709551616.000000000, 0 < 18446744073709551616.000000000, 0 <= 18446744073709551616.000000000, 0 > 18446744073709551616.000000000, 0 >= 18446744073709551616.000000000, 18446744073709551616.000000000 = 0, 18446744073709551616.000000000 != 0, 18446744073709551616.000000000 < 0, 18446744073709551616.000000000 <= 0, 18446744073709551616.000000000 > 0, 18446744073709551616.000000000 >= 0 , toUInt8(0) = 18446744073709551616.000000000, toUInt8(0) != 18446744073709551616.000000000, toUInt8(0) < 18446744073709551616.000000000, toUInt8(0) <= 18446744073709551616.000000000, toUInt8(0) > 18446744073709551616.000000000, toUInt8(0) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt8(0), 18446744073709551616.000000000 != toUInt8(0), 18446744073709551616.000000000 < toUInt8(0), 18446744073709551616.000000000 <= toUInt8(0), 18446744073709551616.000000000 > toUInt8(0), 18446744073709551616.000000000 >= toUInt8(0) , toInt8(0) = 18446744073709551616.000000000, toInt8(0) != 18446744073709551616.000000000, toInt8(0) < 18446744073709551616.000000000, toInt8(0) <= 18446744073709551616.000000000, toInt8(0) > 18446744073709551616.000000000, toInt8(0) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt8(0), 18446744073709551616.000000000 != toInt8(0), 18446744073709551616.000000000 < toInt8(0), 18446744073709551616.000000000 <= toInt8(0), 18446744073709551616.000000000 > toInt8(0), 18446744073709551616.000000000 >= toInt8(0) , toUInt16(0) = 18446744073709551616.000000000, toUInt16(0) != 18446744073709551616.000000000, toUInt16(0) < 18446744073709551616.000000000, toUInt16(0) <= 18446744073709551616.000000000, toUInt16(0) > 18446744073709551616.000000000, toUInt16(0) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt16(0), 18446744073709551616.000000000 != toUInt16(0), 18446744073709551616.000000000 < toUInt16(0), 18446744073709551616.000000000 <= toUInt16(0), 18446744073709551616.000000000 > toUInt16(0), 18446744073709551616.000000000 >= toUInt16(0) , toInt16(0) = 18446744073709551616.000000000, toInt16(0) != 18446744073709551616.000000000, toInt16(0) < 18446744073709551616.000000000, toInt16(0) <= 18446744073709551616.000000000, toInt16(0) > 18446744073709551616.000000000, toInt16(0) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt16(0), 18446744073709551616.000000000 != toInt16(0), 18446744073709551616.000000000 < toInt16(0), 18446744073709551616.000000000 <= toInt16(0), 18446744073709551616.000000000 > toInt16(0), 18446744073709551616.000000000 >= toInt16(0) , toUInt32(0) = 18446744073709551616.000000000, toUInt32(0) != 18446744073709551616.000000000, toUInt32(0) < 18446744073709551616.000000000, toUInt32(0) <= 18446744073709551616.000000000, toUInt32(0) > 18446744073709551616.000000000, toUInt32(0) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt32(0), 18446744073709551616.000000000 != toUInt32(0), 18446744073709551616.000000000 < toUInt32(0), 18446744073709551616.000000000 <= toUInt32(0), 18446744073709551616.000000000 > toUInt32(0), 18446744073709551616.000000000 >= toUInt32(0) , toInt32(0) = 18446744073709551616.000000000, toInt32(0) != 18446744073709551616.000000000, toInt32(0) < 18446744073709551616.000000000, toInt32(0) <= 18446744073709551616.000000000, toInt32(0) > 18446744073709551616.000000000, toInt32(0) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt32(0), 18446744073709551616.000000000 != toInt32(0), 18446744073709551616.000000000 < toInt32(0), 18446744073709551616.000000000 <= toInt32(0), 18446744073709551616.000000000 > toInt32(0), 18446744073709551616.000000000 >= toInt32(0) , toUInt64(0) = 18446744073709551616.000000000, toUInt64(0) != 18446744073709551616.000000000, toUInt64(0) < 18446744073709551616.000000000, toUInt64(0) <= 18446744073709551616.000000000, toUInt64(0) > 18446744073709551616.000000000, toUInt64(0) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt64(0), 18446744073709551616.000000000 != toUInt64(0), 18446744073709551616.000000000 < toUInt64(0), 18446744073709551616.000000000 <= toUInt64(0), 18446744073709551616.000000000 > toUInt64(0), 18446744073709551616.000000000 >= toUInt64(0) , toInt64(0) = 18446744073709551616.000000000, toInt64(0) != 18446744073709551616.000000000, toInt64(0) < 18446744073709551616.000000000, toInt64(0) <= 18446744073709551616.000000000, toInt64(0) > 18446744073709551616.000000000, toInt64(0) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt64(0), 18446744073709551616.000000000 != toInt64(0), 18446744073709551616.000000000 < toInt64(0), 18446744073709551616.000000000 <= toInt64(0), 18446744073709551616.000000000 > toInt64(0), 18446744073709551616.000000000 >= toInt64(0) ;
SELECT '0', '9223372036854775808.000000000', 0 = 9223372036854775808.000000000, 0 != 9223372036854775808.000000000, 0 < 9223372036854775808.000000000, 0 <= 9223372036854775808.000000000, 0 > 9223372036854775808.000000000, 0 >= 9223372036854775808.000000000, 9223372036854775808.000000000 = 0, 9223372036854775808.000000000 != 0, 9223372036854775808.000000000 < 0, 9223372036854775808.000000000 <= 0, 9223372036854775808.000000000 > 0, 9223372036854775808.000000000 >= 0 , toUInt8(0) = 9223372036854775808.000000000, toUInt8(0) != 9223372036854775808.000000000, toUInt8(0) < 9223372036854775808.000000000, toUInt8(0) <= 9223372036854775808.000000000, toUInt8(0) > 9223372036854775808.000000000, toUInt8(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt8(0), 9223372036854775808.000000000 != toUInt8(0), 9223372036854775808.000000000 < toUInt8(0), 9223372036854775808.000000000 <= toUInt8(0), 9223372036854775808.000000000 > toUInt8(0), 9223372036854775808.000000000 >= toUInt8(0) , toInt8(0) = 9223372036854775808.000000000, toInt8(0) != 9223372036854775808.000000000, toInt8(0) < 9223372036854775808.000000000, toInt8(0) <= 9223372036854775808.000000000, toInt8(0) > 9223372036854775808.000000000, toInt8(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt8(0), 9223372036854775808.000000000 != toInt8(0), 9223372036854775808.000000000 < toInt8(0), 9223372036854775808.000000000 <= toInt8(0), 9223372036854775808.000000000 > toInt8(0), 9223372036854775808.000000000 >= toInt8(0) , toUInt16(0) = 9223372036854775808.000000000, toUInt16(0) != 9223372036854775808.000000000, toUInt16(0) < 9223372036854775808.000000000, toUInt16(0) <= 9223372036854775808.000000000, toUInt16(0) > 9223372036854775808.000000000, toUInt16(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt16(0), 9223372036854775808.000000000 != toUInt16(0), 9223372036854775808.000000000 < toUInt16(0), 9223372036854775808.000000000 <= toUInt16(0), 9223372036854775808.000000000 > toUInt16(0), 9223372036854775808.000000000 >= toUInt16(0) , toInt16(0) = 9223372036854775808.000000000, toInt16(0) != 9223372036854775808.000000000, toInt16(0) < 9223372036854775808.000000000, toInt16(0) <= 9223372036854775808.000000000, toInt16(0) > 9223372036854775808.000000000, toInt16(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt16(0), 9223372036854775808.000000000 != toInt16(0), 9223372036854775808.000000000 < toInt16(0), 9223372036854775808.000000000 <= toInt16(0), 9223372036854775808.000000000 > toInt16(0), 9223372036854775808.000000000 >= toInt16(0) , toUInt32(0) = 9223372036854775808.000000000, toUInt32(0) != 9223372036854775808.000000000, toUInt32(0) < 9223372036854775808.000000000, toUInt32(0) <= 9223372036854775808.000000000, toUInt32(0) > 9223372036854775808.000000000, toUInt32(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt32(0), 9223372036854775808.000000000 != toUInt32(0), 9223372036854775808.000000000 < toUInt32(0), 9223372036854775808.000000000 <= toUInt32(0), 9223372036854775808.000000000 > toUInt32(0), 9223372036854775808.000000000 >= toUInt32(0) , toInt32(0) = 9223372036854775808.000000000, toInt32(0) != 9223372036854775808.000000000, toInt32(0) < 9223372036854775808.000000000, toInt32(0) <= 9223372036854775808.000000000, toInt32(0) > 9223372036854775808.000000000, toInt32(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt32(0), 9223372036854775808.000000000 != toInt32(0), 9223372036854775808.000000000 < toInt32(0), 9223372036854775808.000000000 <= toInt32(0), 9223372036854775808.000000000 > toInt32(0), 9223372036854775808.000000000 >= toInt32(0) , toUInt64(0) = 9223372036854775808.000000000, toUInt64(0) != 9223372036854775808.000000000, toUInt64(0) < 9223372036854775808.000000000, toUInt64(0) <= 9223372036854775808.000000000, toUInt64(0) > 9223372036854775808.000000000, toUInt64(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt64(0), 9223372036854775808.000000000 != toUInt64(0), 9223372036854775808.000000000 < toUInt64(0), 9223372036854775808.000000000 <= toUInt64(0), 9223372036854775808.000000000 > toUInt64(0), 9223372036854775808.000000000 >= toUInt64(0) , toInt64(0) = 9223372036854775808.000000000, toInt64(0) != 9223372036854775808.000000000, toInt64(0) < 9223372036854775808.000000000, toInt64(0) <= 9223372036854775808.000000000, toInt64(0) > 9223372036854775808.000000000, toInt64(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt64(0), 9223372036854775808.000000000 != toInt64(0), 9223372036854775808.000000000 < toInt64(0), 9223372036854775808.000000000 <= toInt64(0), 9223372036854775808.000000000 > toInt64(0), 9223372036854775808.000000000 >= toInt64(0) ;
SELECT '0', '-9223372036854775808.000000000', 0 = -9223372036854775808.000000000, 0 != -9223372036854775808.000000000, 0 < -9223372036854775808.000000000, 0 <= -9223372036854775808.000000000, 0 > -9223372036854775808.000000000, 0 >= -9223372036854775808.000000000, -9223372036854775808.000000000 = 0, -9223372036854775808.000000000 != 0, -9223372036854775808.000000000 < 0, -9223372036854775808.000000000 <= 0, -9223372036854775808.000000000 > 0, -9223372036854775808.000000000 >= 0 , toUInt8(0) = -9223372036854775808.000000000, toUInt8(0) != -9223372036854775808.000000000, toUInt8(0) < -9223372036854775808.000000000, toUInt8(0) <= -9223372036854775808.000000000, toUInt8(0) > -9223372036854775808.000000000, toUInt8(0) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt8(0), -9223372036854775808.000000000 != toUInt8(0), -9223372036854775808.000000000 < toUInt8(0), -9223372036854775808.000000000 <= toUInt8(0), -9223372036854775808.000000000 > toUInt8(0), -9223372036854775808.000000000 >= toUInt8(0) , toInt8(0) = -9223372036854775808.000000000, toInt8(0) != -9223372036854775808.000000000, toInt8(0) < -9223372036854775808.000000000, toInt8(0) <= -9223372036854775808.000000000, toInt8(0) > -9223372036854775808.000000000, toInt8(0) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt8(0), -9223372036854775808.000000000 != toInt8(0), -9223372036854775808.000000000 < toInt8(0), -9223372036854775808.000000000 <= toInt8(0), -9223372036854775808.000000000 > toInt8(0), -9223372036854775808.000000000 >= toInt8(0) , toUInt16(0) = -9223372036854775808.000000000, toUInt16(0) != -9223372036854775808.000000000, toUInt16(0) < -9223372036854775808.000000000, toUInt16(0) <= -9223372036854775808.000000000, toUInt16(0) > -9223372036854775808.000000000, toUInt16(0) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt16(0), -9223372036854775808.000000000 != toUInt16(0), -9223372036854775808.000000000 < toUInt16(0), -9223372036854775808.000000000 <= toUInt16(0), -9223372036854775808.000000000 > toUInt16(0), -9223372036854775808.000000000 >= toUInt16(0) , toInt16(0) = -9223372036854775808.000000000, toInt16(0) != -9223372036854775808.000000000, toInt16(0) < -9223372036854775808.000000000, toInt16(0) <= -9223372036854775808.000000000, toInt16(0) > -9223372036854775808.000000000, toInt16(0) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt16(0), -9223372036854775808.000000000 != toInt16(0), -9223372036854775808.000000000 < toInt16(0), -9223372036854775808.000000000 <= toInt16(0), -9223372036854775808.000000000 > toInt16(0), -9223372036854775808.000000000 >= toInt16(0) , toUInt32(0) = -9223372036854775808.000000000, toUInt32(0) != -9223372036854775808.000000000, toUInt32(0) < -9223372036854775808.000000000, toUInt32(0) <= -9223372036854775808.000000000, toUInt32(0) > -9223372036854775808.000000000, toUInt32(0) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt32(0), -9223372036854775808.000000000 != toUInt32(0), -9223372036854775808.000000000 < toUInt32(0), -9223372036854775808.000000000 <= toUInt32(0), -9223372036854775808.000000000 > toUInt32(0), -9223372036854775808.000000000 >= toUInt32(0) , toInt32(0) = -9223372036854775808.000000000, toInt32(0) != -9223372036854775808.000000000, toInt32(0) < -9223372036854775808.000000000, toInt32(0) <= -9223372036854775808.000000000, toInt32(0) > -9223372036854775808.000000000, toInt32(0) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt32(0), -9223372036854775808.000000000 != toInt32(0), -9223372036854775808.000000000 < toInt32(0), -9223372036854775808.000000000 <= toInt32(0), -9223372036854775808.000000000 > toInt32(0), -9223372036854775808.000000000 >= toInt32(0) , toUInt64(0) = -9223372036854775808.000000000, toUInt64(0) != -9223372036854775808.000000000, toUInt64(0) < -9223372036854775808.000000000, toUInt64(0) <= -9223372036854775808.000000000, toUInt64(0) > -9223372036854775808.000000000, toUInt64(0) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt64(0), -9223372036854775808.000000000 != toUInt64(0), -9223372036854775808.000000000 < toUInt64(0), -9223372036854775808.000000000 <= toUInt64(0), -9223372036854775808.000000000 > toUInt64(0), -9223372036854775808.000000000 >= toUInt64(0) , toInt64(0) = -9223372036854775808.000000000, toInt64(0) != -9223372036854775808.000000000, toInt64(0) < -9223372036854775808.000000000, toInt64(0) <= -9223372036854775808.000000000, toInt64(0) > -9223372036854775808.000000000, toInt64(0) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt64(0), -9223372036854775808.000000000 != toInt64(0), -9223372036854775808.000000000 < toInt64(0), -9223372036854775808.000000000 <= toInt64(0), -9223372036854775808.000000000 > toInt64(0), -9223372036854775808.000000000 >= toInt64(0) ;
SELECT '0', '9223372036854775808.000000000', 0 = 9223372036854775808.000000000, 0 != 9223372036854775808.000000000, 0 < 9223372036854775808.000000000, 0 <= 9223372036854775808.000000000, 0 > 9223372036854775808.000000000, 0 >= 9223372036854775808.000000000, 9223372036854775808.000000000 = 0, 9223372036854775808.000000000 != 0, 9223372036854775808.000000000 < 0, 9223372036854775808.000000000 <= 0, 9223372036854775808.000000000 > 0, 9223372036854775808.000000000 >= 0 , toUInt8(0) = 9223372036854775808.000000000, toUInt8(0) != 9223372036854775808.000000000, toUInt8(0) < 9223372036854775808.000000000, toUInt8(0) <= 9223372036854775808.000000000, toUInt8(0) > 9223372036854775808.000000000, toUInt8(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt8(0), 9223372036854775808.000000000 != toUInt8(0), 9223372036854775808.000000000 < toUInt8(0), 9223372036854775808.000000000 <= toUInt8(0), 9223372036854775808.000000000 > toUInt8(0), 9223372036854775808.000000000 >= toUInt8(0) , toInt8(0) = 9223372036854775808.000000000, toInt8(0) != 9223372036854775808.000000000, toInt8(0) < 9223372036854775808.000000000, toInt8(0) <= 9223372036854775808.000000000, toInt8(0) > 9223372036854775808.000000000, toInt8(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt8(0), 9223372036854775808.000000000 != toInt8(0), 9223372036854775808.000000000 < toInt8(0), 9223372036854775808.000000000 <= toInt8(0), 9223372036854775808.000000000 > toInt8(0), 9223372036854775808.000000000 >= toInt8(0) , toUInt16(0) = 9223372036854775808.000000000, toUInt16(0) != 9223372036854775808.000000000, toUInt16(0) < 9223372036854775808.000000000, toUInt16(0) <= 9223372036854775808.000000000, toUInt16(0) > 9223372036854775808.000000000, toUInt16(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt16(0), 9223372036854775808.000000000 != toUInt16(0), 9223372036854775808.000000000 < toUInt16(0), 9223372036854775808.000000000 <= toUInt16(0), 9223372036854775808.000000000 > toUInt16(0), 9223372036854775808.000000000 >= toUInt16(0) , toInt16(0) = 9223372036854775808.000000000, toInt16(0) != 9223372036854775808.000000000, toInt16(0) < 9223372036854775808.000000000, toInt16(0) <= 9223372036854775808.000000000, toInt16(0) > 9223372036854775808.000000000, toInt16(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt16(0), 9223372036854775808.000000000 != toInt16(0), 9223372036854775808.000000000 < toInt16(0), 9223372036854775808.000000000 <= toInt16(0), 9223372036854775808.000000000 > toInt16(0), 9223372036854775808.000000000 >= toInt16(0) , toUInt32(0) = 9223372036854775808.000000000, toUInt32(0) != 9223372036854775808.000000000, toUInt32(0) < 9223372036854775808.000000000, toUInt32(0) <= 9223372036854775808.000000000, toUInt32(0) > 9223372036854775808.000000000, toUInt32(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt32(0), 9223372036854775808.000000000 != toUInt32(0), 9223372036854775808.000000000 < toUInt32(0), 9223372036854775808.000000000 <= toUInt32(0), 9223372036854775808.000000000 > toUInt32(0), 9223372036854775808.000000000 >= toUInt32(0) , toInt32(0) = 9223372036854775808.000000000, toInt32(0) != 9223372036854775808.000000000, toInt32(0) < 9223372036854775808.000000000, toInt32(0) <= 9223372036854775808.000000000, toInt32(0) > 9223372036854775808.000000000, toInt32(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt32(0), 9223372036854775808.000000000 != toInt32(0), 9223372036854775808.000000000 < toInt32(0), 9223372036854775808.000000000 <= toInt32(0), 9223372036854775808.000000000 > toInt32(0), 9223372036854775808.000000000 >= toInt32(0) , toUInt64(0) = 9223372036854775808.000000000, toUInt64(0) != 9223372036854775808.000000000, toUInt64(0) < 9223372036854775808.000000000, toUInt64(0) <= 9223372036854775808.000000000, toUInt64(0) > 9223372036854775808.000000000, toUInt64(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt64(0), 9223372036854775808.000000000 != toUInt64(0), 9223372036854775808.000000000 < toUInt64(0), 9223372036854775808.000000000 <= toUInt64(0), 9223372036854775808.000000000 > toUInt64(0), 9223372036854775808.000000000 >= toUInt64(0) , toInt64(0) = 9223372036854775808.000000000, toInt64(0) != 9223372036854775808.000000000, toInt64(0) < 9223372036854775808.000000000, toInt64(0) <= 9223372036854775808.000000000, toInt64(0) > 9223372036854775808.000000000, toInt64(0) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt64(0), 9223372036854775808.000000000 != toInt64(0), 9223372036854775808.000000000 < toInt64(0), 9223372036854775808.000000000 <= toInt64(0), 9223372036854775808.000000000 > toInt64(0), 9223372036854775808.000000000 >= toInt64(0) ;
SELECT '0', '2251799813685248.000000000', 0 = 2251799813685248.000000000, 0 != 2251799813685248.000000000, 0 < 2251799813685248.000000000, 0 <= 2251799813685248.000000000, 0 > 2251799813685248.000000000, 0 >= 2251799813685248.000000000, 2251799813685248.000000000 = 0, 2251799813685248.000000000 != 0, 2251799813685248.000000000 < 0, 2251799813685248.000000000 <= 0, 2251799813685248.000000000 > 0, 2251799813685248.000000000 >= 0 , toUInt8(0) = 2251799813685248.000000000, toUInt8(0) != 2251799813685248.000000000, toUInt8(0) < 2251799813685248.000000000, toUInt8(0) <= 2251799813685248.000000000, toUInt8(0) > 2251799813685248.000000000, toUInt8(0) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt8(0), 2251799813685248.000000000 != toUInt8(0), 2251799813685248.000000000 < toUInt8(0), 2251799813685248.000000000 <= toUInt8(0), 2251799813685248.000000000 > toUInt8(0), 2251799813685248.000000000 >= toUInt8(0) , toInt8(0) = 2251799813685248.000000000, toInt8(0) != 2251799813685248.000000000, toInt8(0) < 2251799813685248.000000000, toInt8(0) <= 2251799813685248.000000000, toInt8(0) > 2251799813685248.000000000, toInt8(0) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt8(0), 2251799813685248.000000000 != toInt8(0), 2251799813685248.000000000 < toInt8(0), 2251799813685248.000000000 <= toInt8(0), 2251799813685248.000000000 > toInt8(0), 2251799813685248.000000000 >= toInt8(0) , toUInt16(0) = 2251799813685248.000000000, toUInt16(0) != 2251799813685248.000000000, toUInt16(0) < 2251799813685248.000000000, toUInt16(0) <= 2251799813685248.000000000, toUInt16(0) > 2251799813685248.000000000, toUInt16(0) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt16(0), 2251799813685248.000000000 != toUInt16(0), 2251799813685248.000000000 < toUInt16(0), 2251799813685248.000000000 <= toUInt16(0), 2251799813685248.000000000 > toUInt16(0), 2251799813685248.000000000 >= toUInt16(0) , toInt16(0) = 2251799813685248.000000000, toInt16(0) != 2251799813685248.000000000, toInt16(0) < 2251799813685248.000000000, toInt16(0) <= 2251799813685248.000000000, toInt16(0) > 2251799813685248.000000000, toInt16(0) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt16(0), 2251799813685248.000000000 != toInt16(0), 2251799813685248.000000000 < toInt16(0), 2251799813685248.000000000 <= toInt16(0), 2251799813685248.000000000 > toInt16(0), 2251799813685248.000000000 >= toInt16(0) , toUInt32(0) = 2251799813685248.000000000, toUInt32(0) != 2251799813685248.000000000, toUInt32(0) < 2251799813685248.000000000, toUInt32(0) <= 2251799813685248.000000000, toUInt32(0) > 2251799813685248.000000000, toUInt32(0) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt32(0), 2251799813685248.000000000 != toUInt32(0), 2251799813685248.000000000 < toUInt32(0), 2251799813685248.000000000 <= toUInt32(0), 2251799813685248.000000000 > toUInt32(0), 2251799813685248.000000000 >= toUInt32(0) , toInt32(0) = 2251799813685248.000000000, toInt32(0) != 2251799813685248.000000000, toInt32(0) < 2251799813685248.000000000, toInt32(0) <= 2251799813685248.000000000, toInt32(0) > 2251799813685248.000000000, toInt32(0) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt32(0), 2251799813685248.000000000 != toInt32(0), 2251799813685248.000000000 < toInt32(0), 2251799813685248.000000000 <= toInt32(0), 2251799813685248.000000000 > toInt32(0), 2251799813685248.000000000 >= toInt32(0) , toUInt64(0) = 2251799813685248.000000000, toUInt64(0) != 2251799813685248.000000000, toUInt64(0) < 2251799813685248.000000000, toUInt64(0) <= 2251799813685248.000000000, toUInt64(0) > 2251799813685248.000000000, toUInt64(0) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt64(0), 2251799813685248.000000000 != toUInt64(0), 2251799813685248.000000000 < toUInt64(0), 2251799813685248.000000000 <= toUInt64(0), 2251799813685248.000000000 > toUInt64(0), 2251799813685248.000000000 >= toUInt64(0) , toInt64(0) = 2251799813685248.000000000, toInt64(0) != 2251799813685248.000000000, toInt64(0) < 2251799813685248.000000000, toInt64(0) <= 2251799813685248.000000000, toInt64(0) > 2251799813685248.000000000, toInt64(0) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt64(0), 2251799813685248.000000000 != toInt64(0), 2251799813685248.000000000 < toInt64(0), 2251799813685248.000000000 <= toInt64(0), 2251799813685248.000000000 > toInt64(0), 2251799813685248.000000000 >= toInt64(0) ;
SELECT '0', '4503599627370496.000000000', 0 = 4503599627370496.000000000, 0 != 4503599627370496.000000000, 0 < 4503599627370496.000000000, 0 <= 4503599627370496.000000000, 0 > 4503599627370496.000000000, 0 >= 4503599627370496.000000000, 4503599627370496.000000000 = 0, 4503599627370496.000000000 != 0, 4503599627370496.000000000 < 0, 4503599627370496.000000000 <= 0, 4503599627370496.000000000 > 0, 4503599627370496.000000000 >= 0 , toUInt8(0) = 4503599627370496.000000000, toUInt8(0) != 4503599627370496.000000000, toUInt8(0) < 4503599627370496.000000000, toUInt8(0) <= 4503599627370496.000000000, toUInt8(0) > 4503599627370496.000000000, toUInt8(0) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt8(0), 4503599627370496.000000000 != toUInt8(0), 4503599627370496.000000000 < toUInt8(0), 4503599627370496.000000000 <= toUInt8(0), 4503599627370496.000000000 > toUInt8(0), 4503599627370496.000000000 >= toUInt8(0) , toInt8(0) = 4503599627370496.000000000, toInt8(0) != 4503599627370496.000000000, toInt8(0) < 4503599627370496.000000000, toInt8(0) <= 4503599627370496.000000000, toInt8(0) > 4503599627370496.000000000, toInt8(0) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt8(0), 4503599627370496.000000000 != toInt8(0), 4503599627370496.000000000 < toInt8(0), 4503599627370496.000000000 <= toInt8(0), 4503599627370496.000000000 > toInt8(0), 4503599627370496.000000000 >= toInt8(0) , toUInt16(0) = 4503599627370496.000000000, toUInt16(0) != 4503599627370496.000000000, toUInt16(0) < 4503599627370496.000000000, toUInt16(0) <= 4503599627370496.000000000, toUInt16(0) > 4503599627370496.000000000, toUInt16(0) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt16(0), 4503599627370496.000000000 != toUInt16(0), 4503599627370496.000000000 < toUInt16(0), 4503599627370496.000000000 <= toUInt16(0), 4503599627370496.000000000 > toUInt16(0), 4503599627370496.000000000 >= toUInt16(0) , toInt16(0) = 4503599627370496.000000000, toInt16(0) != 4503599627370496.000000000, toInt16(0) < 4503599627370496.000000000, toInt16(0) <= 4503599627370496.000000000, toInt16(0) > 4503599627370496.000000000, toInt16(0) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt16(0), 4503599627370496.000000000 != toInt16(0), 4503599627370496.000000000 < toInt16(0), 4503599627370496.000000000 <= toInt16(0), 4503599627370496.000000000 > toInt16(0), 4503599627370496.000000000 >= toInt16(0) , toUInt32(0) = 4503599627370496.000000000, toUInt32(0) != 4503599627370496.000000000, toUInt32(0) < 4503599627370496.000000000, toUInt32(0) <= 4503599627370496.000000000, toUInt32(0) > 4503599627370496.000000000, toUInt32(0) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt32(0), 4503599627370496.000000000 != toUInt32(0), 4503599627370496.000000000 < toUInt32(0), 4503599627370496.000000000 <= toUInt32(0), 4503599627370496.000000000 > toUInt32(0), 4503599627370496.000000000 >= toUInt32(0) , toInt32(0) = 4503599627370496.000000000, toInt32(0) != 4503599627370496.000000000, toInt32(0) < 4503599627370496.000000000, toInt32(0) <= 4503599627370496.000000000, toInt32(0) > 4503599627370496.000000000, toInt32(0) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt32(0), 4503599627370496.000000000 != toInt32(0), 4503599627370496.000000000 < toInt32(0), 4503599627370496.000000000 <= toInt32(0), 4503599627370496.000000000 > toInt32(0), 4503599627370496.000000000 >= toInt32(0) , toUInt64(0) = 4503599627370496.000000000, toUInt64(0) != 4503599627370496.000000000, toUInt64(0) < 4503599627370496.000000000, toUInt64(0) <= 4503599627370496.000000000, toUInt64(0) > 4503599627370496.000000000, toUInt64(0) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt64(0), 4503599627370496.000000000 != toUInt64(0), 4503599627370496.000000000 < toUInt64(0), 4503599627370496.000000000 <= toUInt64(0), 4503599627370496.000000000 > toUInt64(0), 4503599627370496.000000000 >= toUInt64(0) , toInt64(0) = 4503599627370496.000000000, toInt64(0) != 4503599627370496.000000000, toInt64(0) < 4503599627370496.000000000, toInt64(0) <= 4503599627370496.000000000, toInt64(0) > 4503599627370496.000000000, toInt64(0) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt64(0), 4503599627370496.000000000 != toInt64(0), 4503599627370496.000000000 < toInt64(0), 4503599627370496.000000000 <= toInt64(0), 4503599627370496.000000000 > toInt64(0), 4503599627370496.000000000 >= toInt64(0) ;
SELECT '0', '9007199254740991.000000000', 0 = 9007199254740991.000000000, 0 != 9007199254740991.000000000, 0 < 9007199254740991.000000000, 0 <= 9007199254740991.000000000, 0 > 9007199254740991.000000000, 0 >= 9007199254740991.000000000, 9007199254740991.000000000 = 0, 9007199254740991.000000000 != 0, 9007199254740991.000000000 < 0, 9007199254740991.000000000 <= 0, 9007199254740991.000000000 > 0, 9007199254740991.000000000 >= 0 , toUInt8(0) = 9007199254740991.000000000, toUInt8(0) != 9007199254740991.000000000, toUInt8(0) < 9007199254740991.000000000, toUInt8(0) <= 9007199254740991.000000000, toUInt8(0) > 9007199254740991.000000000, toUInt8(0) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt8(0), 9007199254740991.000000000 != toUInt8(0), 9007199254740991.000000000 < toUInt8(0), 9007199254740991.000000000 <= toUInt8(0), 9007199254740991.000000000 > toUInt8(0), 9007199254740991.000000000 >= toUInt8(0) , toInt8(0) = 9007199254740991.000000000, toInt8(0) != 9007199254740991.000000000, toInt8(0) < 9007199254740991.000000000, toInt8(0) <= 9007199254740991.000000000, toInt8(0) > 9007199254740991.000000000, toInt8(0) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt8(0), 9007199254740991.000000000 != toInt8(0), 9007199254740991.000000000 < toInt8(0), 9007199254740991.000000000 <= toInt8(0), 9007199254740991.000000000 > toInt8(0), 9007199254740991.000000000 >= toInt8(0) , toUInt16(0) = 9007199254740991.000000000, toUInt16(0) != 9007199254740991.000000000, toUInt16(0) < 9007199254740991.000000000, toUInt16(0) <= 9007199254740991.000000000, toUInt16(0) > 9007199254740991.000000000, toUInt16(0) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt16(0), 9007199254740991.000000000 != toUInt16(0), 9007199254740991.000000000 < toUInt16(0), 9007199254740991.000000000 <= toUInt16(0), 9007199254740991.000000000 > toUInt16(0), 9007199254740991.000000000 >= toUInt16(0) , toInt16(0) = 9007199254740991.000000000, toInt16(0) != 9007199254740991.000000000, toInt16(0) < 9007199254740991.000000000, toInt16(0) <= 9007199254740991.000000000, toInt16(0) > 9007199254740991.000000000, toInt16(0) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt16(0), 9007199254740991.000000000 != toInt16(0), 9007199254740991.000000000 < toInt16(0), 9007199254740991.000000000 <= toInt16(0), 9007199254740991.000000000 > toInt16(0), 9007199254740991.000000000 >= toInt16(0) , toUInt32(0) = 9007199254740991.000000000, toUInt32(0) != 9007199254740991.000000000, toUInt32(0) < 9007199254740991.000000000, toUInt32(0) <= 9007199254740991.000000000, toUInt32(0) > 9007199254740991.000000000, toUInt32(0) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt32(0), 9007199254740991.000000000 != toUInt32(0), 9007199254740991.000000000 < toUInt32(0), 9007199254740991.000000000 <= toUInt32(0), 9007199254740991.000000000 > toUInt32(0), 9007199254740991.000000000 >= toUInt32(0) , toInt32(0) = 9007199254740991.000000000, toInt32(0) != 9007199254740991.000000000, toInt32(0) < 9007199254740991.000000000, toInt32(0) <= 9007199254740991.000000000, toInt32(0) > 9007199254740991.000000000, toInt32(0) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt32(0), 9007199254740991.000000000 != toInt32(0), 9007199254740991.000000000 < toInt32(0), 9007199254740991.000000000 <= toInt32(0), 9007199254740991.000000000 > toInt32(0), 9007199254740991.000000000 >= toInt32(0) , toUInt64(0) = 9007199254740991.000000000, toUInt64(0) != 9007199254740991.000000000, toUInt64(0) < 9007199254740991.000000000, toUInt64(0) <= 9007199254740991.000000000, toUInt64(0) > 9007199254740991.000000000, toUInt64(0) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt64(0), 9007199254740991.000000000 != toUInt64(0), 9007199254740991.000000000 < toUInt64(0), 9007199254740991.000000000 <= toUInt64(0), 9007199254740991.000000000 > toUInt64(0), 9007199254740991.000000000 >= toUInt64(0) , toInt64(0) = 9007199254740991.000000000, toInt64(0) != 9007199254740991.000000000, toInt64(0) < 9007199254740991.000000000, toInt64(0) <= 9007199254740991.000000000, toInt64(0) > 9007199254740991.000000000, toInt64(0) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt64(0), 9007199254740991.000000000 != toInt64(0), 9007199254740991.000000000 < toInt64(0), 9007199254740991.000000000 <= toInt64(0), 9007199254740991.000000000 > toInt64(0), 9007199254740991.000000000 >= toInt64(0) ;
SELECT '0', '9007199254740992.000000000', 0 = 9007199254740992.000000000, 0 != 9007199254740992.000000000, 0 < 9007199254740992.000000000, 0 <= 9007199254740992.000000000, 0 > 9007199254740992.000000000, 0 >= 9007199254740992.000000000, 9007199254740992.000000000 = 0, 9007199254740992.000000000 != 0, 9007199254740992.000000000 < 0, 9007199254740992.000000000 <= 0, 9007199254740992.000000000 > 0, 9007199254740992.000000000 >= 0 , toUInt8(0) = 9007199254740992.000000000, toUInt8(0) != 9007199254740992.000000000, toUInt8(0) < 9007199254740992.000000000, toUInt8(0) <= 9007199254740992.000000000, toUInt8(0) > 9007199254740992.000000000, toUInt8(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt8(0), 9007199254740992.000000000 != toUInt8(0), 9007199254740992.000000000 < toUInt8(0), 9007199254740992.000000000 <= toUInt8(0), 9007199254740992.000000000 > toUInt8(0), 9007199254740992.000000000 >= toUInt8(0) , toInt8(0) = 9007199254740992.000000000, toInt8(0) != 9007199254740992.000000000, toInt8(0) < 9007199254740992.000000000, toInt8(0) <= 9007199254740992.000000000, toInt8(0) > 9007199254740992.000000000, toInt8(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(0), 9007199254740992.000000000 != toInt8(0), 9007199254740992.000000000 < toInt8(0), 9007199254740992.000000000 <= toInt8(0), 9007199254740992.000000000 > toInt8(0), 9007199254740992.000000000 >= toInt8(0) , toUInt16(0) = 9007199254740992.000000000, toUInt16(0) != 9007199254740992.000000000, toUInt16(0) < 9007199254740992.000000000, toUInt16(0) <= 9007199254740992.000000000, toUInt16(0) > 9007199254740992.000000000, toUInt16(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt16(0), 9007199254740992.000000000 != toUInt16(0), 9007199254740992.000000000 < toUInt16(0), 9007199254740992.000000000 <= toUInt16(0), 9007199254740992.000000000 > toUInt16(0), 9007199254740992.000000000 >= toUInt16(0) , toInt16(0) = 9007199254740992.000000000, toInt16(0) != 9007199254740992.000000000, toInt16(0) < 9007199254740992.000000000, toInt16(0) <= 9007199254740992.000000000, toInt16(0) > 9007199254740992.000000000, toInt16(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(0), 9007199254740992.000000000 != toInt16(0), 9007199254740992.000000000 < toInt16(0), 9007199254740992.000000000 <= toInt16(0), 9007199254740992.000000000 > toInt16(0), 9007199254740992.000000000 >= toInt16(0) , toUInt32(0) = 9007199254740992.000000000, toUInt32(0) != 9007199254740992.000000000, toUInt32(0) < 9007199254740992.000000000, toUInt32(0) <= 9007199254740992.000000000, toUInt32(0) > 9007199254740992.000000000, toUInt32(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt32(0), 9007199254740992.000000000 != toUInt32(0), 9007199254740992.000000000 < toUInt32(0), 9007199254740992.000000000 <= toUInt32(0), 9007199254740992.000000000 > toUInt32(0), 9007199254740992.000000000 >= toUInt32(0) , toInt32(0) = 9007199254740992.000000000, toInt32(0) != 9007199254740992.000000000, toInt32(0) < 9007199254740992.000000000, toInt32(0) <= 9007199254740992.000000000, toInt32(0) > 9007199254740992.000000000, toInt32(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(0), 9007199254740992.000000000 != toInt32(0), 9007199254740992.000000000 < toInt32(0), 9007199254740992.000000000 <= toInt32(0), 9007199254740992.000000000 > toInt32(0), 9007199254740992.000000000 >= toInt32(0) , toUInt64(0) = 9007199254740992.000000000, toUInt64(0) != 9007199254740992.000000000, toUInt64(0) < 9007199254740992.000000000, toUInt64(0) <= 9007199254740992.000000000, toUInt64(0) > 9007199254740992.000000000, toUInt64(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(0), 9007199254740992.000000000 != toUInt64(0), 9007199254740992.000000000 < toUInt64(0), 9007199254740992.000000000 <= toUInt64(0), 9007199254740992.000000000 > toUInt64(0), 9007199254740992.000000000 >= toUInt64(0) , toInt64(0) = 9007199254740992.000000000, toInt64(0) != 9007199254740992.000000000, toInt64(0) < 9007199254740992.000000000, toInt64(0) <= 9007199254740992.000000000, toInt64(0) > 9007199254740992.000000000, toInt64(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(0), 9007199254740992.000000000 != toInt64(0), 9007199254740992.000000000 < toInt64(0), 9007199254740992.000000000 <= toInt64(0), 9007199254740992.000000000 > toInt64(0), 9007199254740992.000000000 >= toInt64(0) ;
SELECT '0', '9007199254740992.000000000', 0 = 9007199254740992.000000000, 0 != 9007199254740992.000000000, 0 < 9007199254740992.000000000, 0 <= 9007199254740992.000000000, 0 > 9007199254740992.000000000, 0 >= 9007199254740992.000000000, 9007199254740992.000000000 = 0, 9007199254740992.000000000 != 0, 9007199254740992.000000000 < 0, 9007199254740992.000000000 <= 0, 9007199254740992.000000000 > 0, 9007199254740992.000000000 >= 0 , toUInt8(0) = 9007199254740992.000000000, toUInt8(0) != 9007199254740992.000000000, toUInt8(0) < 9007199254740992.000000000, toUInt8(0) <= 9007199254740992.000000000, toUInt8(0) > 9007199254740992.000000000, toUInt8(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt8(0), 9007199254740992.000000000 != toUInt8(0), 9007199254740992.000000000 < toUInt8(0), 9007199254740992.000000000 <= toUInt8(0), 9007199254740992.000000000 > toUInt8(0), 9007199254740992.000000000 >= toUInt8(0) , toInt8(0) = 9007199254740992.000000000, toInt8(0) != 9007199254740992.000000000, toInt8(0) < 9007199254740992.000000000, toInt8(0) <= 9007199254740992.000000000, toInt8(0) > 9007199254740992.000000000, toInt8(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(0), 9007199254740992.000000000 != toInt8(0), 9007199254740992.000000000 < toInt8(0), 9007199254740992.000000000 <= toInt8(0), 9007199254740992.000000000 > toInt8(0), 9007199254740992.000000000 >= toInt8(0) , toUInt16(0) = 9007199254740992.000000000, toUInt16(0) != 9007199254740992.000000000, toUInt16(0) < 9007199254740992.000000000, toUInt16(0) <= 9007199254740992.000000000, toUInt16(0) > 9007199254740992.000000000, toUInt16(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt16(0), 9007199254740992.000000000 != toUInt16(0), 9007199254740992.000000000 < toUInt16(0), 9007199254740992.000000000 <= toUInt16(0), 9007199254740992.000000000 > toUInt16(0), 9007199254740992.000000000 >= toUInt16(0) , toInt16(0) = 9007199254740992.000000000, toInt16(0) != 9007199254740992.000000000, toInt16(0) < 9007199254740992.000000000, toInt16(0) <= 9007199254740992.000000000, toInt16(0) > 9007199254740992.000000000, toInt16(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(0), 9007199254740992.000000000 != toInt16(0), 9007199254740992.000000000 < toInt16(0), 9007199254740992.000000000 <= toInt16(0), 9007199254740992.000000000 > toInt16(0), 9007199254740992.000000000 >= toInt16(0) , toUInt32(0) = 9007199254740992.000000000, toUInt32(0) != 9007199254740992.000000000, toUInt32(0) < 9007199254740992.000000000, toUInt32(0) <= 9007199254740992.000000000, toUInt32(0) > 9007199254740992.000000000, toUInt32(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt32(0), 9007199254740992.000000000 != toUInt32(0), 9007199254740992.000000000 < toUInt32(0), 9007199254740992.000000000 <= toUInt32(0), 9007199254740992.000000000 > toUInt32(0), 9007199254740992.000000000 >= toUInt32(0) , toInt32(0) = 9007199254740992.000000000, toInt32(0) != 9007199254740992.000000000, toInt32(0) < 9007199254740992.000000000, toInt32(0) <= 9007199254740992.000000000, toInt32(0) > 9007199254740992.000000000, toInt32(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(0), 9007199254740992.000000000 != toInt32(0), 9007199254740992.000000000 < toInt32(0), 9007199254740992.000000000 <= toInt32(0), 9007199254740992.000000000 > toInt32(0), 9007199254740992.000000000 >= toInt32(0) , toUInt64(0) = 9007199254740992.000000000, toUInt64(0) != 9007199254740992.000000000, toUInt64(0) < 9007199254740992.000000000, toUInt64(0) <= 9007199254740992.000000000, toUInt64(0) > 9007199254740992.000000000, toUInt64(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(0), 9007199254740992.000000000 != toUInt64(0), 9007199254740992.000000000 < toUInt64(0), 9007199254740992.000000000 <= toUInt64(0), 9007199254740992.000000000 > toUInt64(0), 9007199254740992.000000000 >= toUInt64(0) , toInt64(0) = 9007199254740992.000000000, toInt64(0) != 9007199254740992.000000000, toInt64(0) < 9007199254740992.000000000, toInt64(0) <= 9007199254740992.000000000, toInt64(0) > 9007199254740992.000000000, toInt64(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(0), 9007199254740992.000000000 != toInt64(0), 9007199254740992.000000000 < toInt64(0), 9007199254740992.000000000 <= toInt64(0), 9007199254740992.000000000 > toInt64(0), 9007199254740992.000000000 >= toInt64(0) ;
SELECT '0', '9007199254740994.000000000', 0 = 9007199254740994.000000000, 0 != 9007199254740994.000000000, 0 < 9007199254740994.000000000, 0 <= 9007199254740994.000000000, 0 > 9007199254740994.000000000, 0 >= 9007199254740994.000000000, 9007199254740994.000000000 = 0, 9007199254740994.000000000 != 0, 9007199254740994.000000000 < 0, 9007199254740994.000000000 <= 0, 9007199254740994.000000000 > 0, 9007199254740994.000000000 >= 0 , toUInt8(0) = 9007199254740994.000000000, toUInt8(0) != 9007199254740994.000000000, toUInt8(0) < 9007199254740994.000000000, toUInt8(0) <= 9007199254740994.000000000, toUInt8(0) > 9007199254740994.000000000, toUInt8(0) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt8(0), 9007199254740994.000000000 != toUInt8(0), 9007199254740994.000000000 < toUInt8(0), 9007199254740994.000000000 <= toUInt8(0), 9007199254740994.000000000 > toUInt8(0), 9007199254740994.000000000 >= toUInt8(0) , toInt8(0) = 9007199254740994.000000000, toInt8(0) != 9007199254740994.000000000, toInt8(0) < 9007199254740994.000000000, toInt8(0) <= 9007199254740994.000000000, toInt8(0) > 9007199254740994.000000000, toInt8(0) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt8(0), 9007199254740994.000000000 != toInt8(0), 9007199254740994.000000000 < toInt8(0), 9007199254740994.000000000 <= toInt8(0), 9007199254740994.000000000 > toInt8(0), 9007199254740994.000000000 >= toInt8(0) , toUInt16(0) = 9007199254740994.000000000, toUInt16(0) != 9007199254740994.000000000, toUInt16(0) < 9007199254740994.000000000, toUInt16(0) <= 9007199254740994.000000000, toUInt16(0) > 9007199254740994.000000000, toUInt16(0) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt16(0), 9007199254740994.000000000 != toUInt16(0), 9007199254740994.000000000 < toUInt16(0), 9007199254740994.000000000 <= toUInt16(0), 9007199254740994.000000000 > toUInt16(0), 9007199254740994.000000000 >= toUInt16(0) , toInt16(0) = 9007199254740994.000000000, toInt16(0) != 9007199254740994.000000000, toInt16(0) < 9007199254740994.000000000, toInt16(0) <= 9007199254740994.000000000, toInt16(0) > 9007199254740994.000000000, toInt16(0) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt16(0), 9007199254740994.000000000 != toInt16(0), 9007199254740994.000000000 < toInt16(0), 9007199254740994.000000000 <= toInt16(0), 9007199254740994.000000000 > toInt16(0), 9007199254740994.000000000 >= toInt16(0) , toUInt32(0) = 9007199254740994.000000000, toUInt32(0) != 9007199254740994.000000000, toUInt32(0) < 9007199254740994.000000000, toUInt32(0) <= 9007199254740994.000000000, toUInt32(0) > 9007199254740994.000000000, toUInt32(0) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt32(0), 9007199254740994.000000000 != toUInt32(0), 9007199254740994.000000000 < toUInt32(0), 9007199254740994.000000000 <= toUInt32(0), 9007199254740994.000000000 > toUInt32(0), 9007199254740994.000000000 >= toUInt32(0) , toInt32(0) = 9007199254740994.000000000, toInt32(0) != 9007199254740994.000000000, toInt32(0) < 9007199254740994.000000000, toInt32(0) <= 9007199254740994.000000000, toInt32(0) > 9007199254740994.000000000, toInt32(0) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt32(0), 9007199254740994.000000000 != toInt32(0), 9007199254740994.000000000 < toInt32(0), 9007199254740994.000000000 <= toInt32(0), 9007199254740994.000000000 > toInt32(0), 9007199254740994.000000000 >= toInt32(0) , toUInt64(0) = 9007199254740994.000000000, toUInt64(0) != 9007199254740994.000000000, toUInt64(0) < 9007199254740994.000000000, toUInt64(0) <= 9007199254740994.000000000, toUInt64(0) > 9007199254740994.000000000, toUInt64(0) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt64(0), 9007199254740994.000000000 != toUInt64(0), 9007199254740994.000000000 < toUInt64(0), 9007199254740994.000000000 <= toUInt64(0), 9007199254740994.000000000 > toUInt64(0), 9007199254740994.000000000 >= toUInt64(0) , toInt64(0) = 9007199254740994.000000000, toInt64(0) != 9007199254740994.000000000, toInt64(0) < 9007199254740994.000000000, toInt64(0) <= 9007199254740994.000000000, toInt64(0) > 9007199254740994.000000000, toInt64(0) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt64(0), 9007199254740994.000000000 != toInt64(0), 9007199254740994.000000000 < toInt64(0), 9007199254740994.000000000 <= toInt64(0), 9007199254740994.000000000 > toInt64(0), 9007199254740994.000000000 >= toInt64(0) ;
SELECT '0', '-9007199254740991.000000000', 0 = -9007199254740991.000000000, 0 != -9007199254740991.000000000, 0 < -9007199254740991.000000000, 0 <= -9007199254740991.000000000, 0 > -9007199254740991.000000000, 0 >= -9007199254740991.000000000, -9007199254740991.000000000 = 0, -9007199254740991.000000000 != 0, -9007199254740991.000000000 < 0, -9007199254740991.000000000 <= 0, -9007199254740991.000000000 > 0, -9007199254740991.000000000 >= 0 , toUInt8(0) = -9007199254740991.000000000, toUInt8(0) != -9007199254740991.000000000, toUInt8(0) < -9007199254740991.000000000, toUInt8(0) <= -9007199254740991.000000000, toUInt8(0) > -9007199254740991.000000000, toUInt8(0) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt8(0), -9007199254740991.000000000 != toUInt8(0), -9007199254740991.000000000 < toUInt8(0), -9007199254740991.000000000 <= toUInt8(0), -9007199254740991.000000000 > toUInt8(0), -9007199254740991.000000000 >= toUInt8(0) , toInt8(0) = -9007199254740991.000000000, toInt8(0) != -9007199254740991.000000000, toInt8(0) < -9007199254740991.000000000, toInt8(0) <= -9007199254740991.000000000, toInt8(0) > -9007199254740991.000000000, toInt8(0) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt8(0), -9007199254740991.000000000 != toInt8(0), -9007199254740991.000000000 < toInt8(0), -9007199254740991.000000000 <= toInt8(0), -9007199254740991.000000000 > toInt8(0), -9007199254740991.000000000 >= toInt8(0) , toUInt16(0) = -9007199254740991.000000000, toUInt16(0) != -9007199254740991.000000000, toUInt16(0) < -9007199254740991.000000000, toUInt16(0) <= -9007199254740991.000000000, toUInt16(0) > -9007199254740991.000000000, toUInt16(0) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt16(0), -9007199254740991.000000000 != toUInt16(0), -9007199254740991.000000000 < toUInt16(0), -9007199254740991.000000000 <= toUInt16(0), -9007199254740991.000000000 > toUInt16(0), -9007199254740991.000000000 >= toUInt16(0) , toInt16(0) = -9007199254740991.000000000, toInt16(0) != -9007199254740991.000000000, toInt16(0) < -9007199254740991.000000000, toInt16(0) <= -9007199254740991.000000000, toInt16(0) > -9007199254740991.000000000, toInt16(0) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt16(0), -9007199254740991.000000000 != toInt16(0), -9007199254740991.000000000 < toInt16(0), -9007199254740991.000000000 <= toInt16(0), -9007199254740991.000000000 > toInt16(0), -9007199254740991.000000000 >= toInt16(0) , toUInt32(0) = -9007199254740991.000000000, toUInt32(0) != -9007199254740991.000000000, toUInt32(0) < -9007199254740991.000000000, toUInt32(0) <= -9007199254740991.000000000, toUInt32(0) > -9007199254740991.000000000, toUInt32(0) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt32(0), -9007199254740991.000000000 != toUInt32(0), -9007199254740991.000000000 < toUInt32(0), -9007199254740991.000000000 <= toUInt32(0), -9007199254740991.000000000 > toUInt32(0), -9007199254740991.000000000 >= toUInt32(0) , toInt32(0) = -9007199254740991.000000000, toInt32(0) != -9007199254740991.000000000, toInt32(0) < -9007199254740991.000000000, toInt32(0) <= -9007199254740991.000000000, toInt32(0) > -9007199254740991.000000000, toInt32(0) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt32(0), -9007199254740991.000000000 != toInt32(0), -9007199254740991.000000000 < toInt32(0), -9007199254740991.000000000 <= toInt32(0), -9007199254740991.000000000 > toInt32(0), -9007199254740991.000000000 >= toInt32(0) , toUInt64(0) = -9007199254740991.000000000, toUInt64(0) != -9007199254740991.000000000, toUInt64(0) < -9007199254740991.000000000, toUInt64(0) <= -9007199254740991.000000000, toUInt64(0) > -9007199254740991.000000000, toUInt64(0) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt64(0), -9007199254740991.000000000 != toUInt64(0), -9007199254740991.000000000 < toUInt64(0), -9007199254740991.000000000 <= toUInt64(0), -9007199254740991.000000000 > toUInt64(0), -9007199254740991.000000000 >= toUInt64(0) , toInt64(0) = -9007199254740991.000000000, toInt64(0) != -9007199254740991.000000000, toInt64(0) < -9007199254740991.000000000, toInt64(0) <= -9007199254740991.000000000, toInt64(0) > -9007199254740991.000000000, toInt64(0) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt64(0), -9007199254740991.000000000 != toInt64(0), -9007199254740991.000000000 < toInt64(0), -9007199254740991.000000000 <= toInt64(0), -9007199254740991.000000000 > toInt64(0), -9007199254740991.000000000 >= toInt64(0) ;
SELECT '0', '-9007199254740992.000000000', 0 = -9007199254740992.000000000, 0 != -9007199254740992.000000000, 0 < -9007199254740992.000000000, 0 <= -9007199254740992.000000000, 0 > -9007199254740992.000000000, 0 >= -9007199254740992.000000000, -9007199254740992.000000000 = 0, -9007199254740992.000000000 != 0, -9007199254740992.000000000 < 0, -9007199254740992.000000000 <= 0, -9007199254740992.000000000 > 0, -9007199254740992.000000000 >= 0 , toUInt8(0) = -9007199254740992.000000000, toUInt8(0) != -9007199254740992.000000000, toUInt8(0) < -9007199254740992.000000000, toUInt8(0) <= -9007199254740992.000000000, toUInt8(0) > -9007199254740992.000000000, toUInt8(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt8(0), -9007199254740992.000000000 != toUInt8(0), -9007199254740992.000000000 < toUInt8(0), -9007199254740992.000000000 <= toUInt8(0), -9007199254740992.000000000 > toUInt8(0), -9007199254740992.000000000 >= toUInt8(0) , toInt8(0) = -9007199254740992.000000000, toInt8(0) != -9007199254740992.000000000, toInt8(0) < -9007199254740992.000000000, toInt8(0) <= -9007199254740992.000000000, toInt8(0) > -9007199254740992.000000000, toInt8(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt8(0), -9007199254740992.000000000 != toInt8(0), -9007199254740992.000000000 < toInt8(0), -9007199254740992.000000000 <= toInt8(0), -9007199254740992.000000000 > toInt8(0), -9007199254740992.000000000 >= toInt8(0) , toUInt16(0) = -9007199254740992.000000000, toUInt16(0) != -9007199254740992.000000000, toUInt16(0) < -9007199254740992.000000000, toUInt16(0) <= -9007199254740992.000000000, toUInt16(0) > -9007199254740992.000000000, toUInt16(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt16(0), -9007199254740992.000000000 != toUInt16(0), -9007199254740992.000000000 < toUInt16(0), -9007199254740992.000000000 <= toUInt16(0), -9007199254740992.000000000 > toUInt16(0), -9007199254740992.000000000 >= toUInt16(0) , toInt16(0) = -9007199254740992.000000000, toInt16(0) != -9007199254740992.000000000, toInt16(0) < -9007199254740992.000000000, toInt16(0) <= -9007199254740992.000000000, toInt16(0) > -9007199254740992.000000000, toInt16(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt16(0), -9007199254740992.000000000 != toInt16(0), -9007199254740992.000000000 < toInt16(0), -9007199254740992.000000000 <= toInt16(0), -9007199254740992.000000000 > toInt16(0), -9007199254740992.000000000 >= toInt16(0) , toUInt32(0) = -9007199254740992.000000000, toUInt32(0) != -9007199254740992.000000000, toUInt32(0) < -9007199254740992.000000000, toUInt32(0) <= -9007199254740992.000000000, toUInt32(0) > -9007199254740992.000000000, toUInt32(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt32(0), -9007199254740992.000000000 != toUInt32(0), -9007199254740992.000000000 < toUInt32(0), -9007199254740992.000000000 <= toUInt32(0), -9007199254740992.000000000 > toUInt32(0), -9007199254740992.000000000 >= toUInt32(0) , toInt32(0) = -9007199254740992.000000000, toInt32(0) != -9007199254740992.000000000, toInt32(0) < -9007199254740992.000000000, toInt32(0) <= -9007199254740992.000000000, toInt32(0) > -9007199254740992.000000000, toInt32(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt32(0), -9007199254740992.000000000 != toInt32(0), -9007199254740992.000000000 < toInt32(0), -9007199254740992.000000000 <= toInt32(0), -9007199254740992.000000000 > toInt32(0), -9007199254740992.000000000 >= toInt32(0) , toUInt64(0) = -9007199254740992.000000000, toUInt64(0) != -9007199254740992.000000000, toUInt64(0) < -9007199254740992.000000000, toUInt64(0) <= -9007199254740992.000000000, toUInt64(0) > -9007199254740992.000000000, toUInt64(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt64(0), -9007199254740992.000000000 != toUInt64(0), -9007199254740992.000000000 < toUInt64(0), -9007199254740992.000000000 <= toUInt64(0), -9007199254740992.000000000 > toUInt64(0), -9007199254740992.000000000 >= toUInt64(0) , toInt64(0) = -9007199254740992.000000000, toInt64(0) != -9007199254740992.000000000, toInt64(0) < -9007199254740992.000000000, toInt64(0) <= -9007199254740992.000000000, toInt64(0) > -9007199254740992.000000000, toInt64(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt64(0), -9007199254740992.000000000 != toInt64(0), -9007199254740992.000000000 < toInt64(0), -9007199254740992.000000000 <= toInt64(0), -9007199254740992.000000000 > toInt64(0), -9007199254740992.000000000 >= toInt64(0) ;
SELECT '0', '-9007199254740992.000000000', 0 = -9007199254740992.000000000, 0 != -9007199254740992.000000000, 0 < -9007199254740992.000000000, 0 <= -9007199254740992.000000000, 0 > -9007199254740992.000000000, 0 >= -9007199254740992.000000000, -9007199254740992.000000000 = 0, -9007199254740992.000000000 != 0, -9007199254740992.000000000 < 0, -9007199254740992.000000000 <= 0, -9007199254740992.000000000 > 0, -9007199254740992.000000000 >= 0 , toUInt8(0) = -9007199254740992.000000000, toUInt8(0) != -9007199254740992.000000000, toUInt8(0) < -9007199254740992.000000000, toUInt8(0) <= -9007199254740992.000000000, toUInt8(0) > -9007199254740992.000000000, toUInt8(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt8(0), -9007199254740992.000000000 != toUInt8(0), -9007199254740992.000000000 < toUInt8(0), -9007199254740992.000000000 <= toUInt8(0), -9007199254740992.000000000 > toUInt8(0), -9007199254740992.000000000 >= toUInt8(0) , toInt8(0) = -9007199254740992.000000000, toInt8(0) != -9007199254740992.000000000, toInt8(0) < -9007199254740992.000000000, toInt8(0) <= -9007199254740992.000000000, toInt8(0) > -9007199254740992.000000000, toInt8(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt8(0), -9007199254740992.000000000 != toInt8(0), -9007199254740992.000000000 < toInt8(0), -9007199254740992.000000000 <= toInt8(0), -9007199254740992.000000000 > toInt8(0), -9007199254740992.000000000 >= toInt8(0) , toUInt16(0) = -9007199254740992.000000000, toUInt16(0) != -9007199254740992.000000000, toUInt16(0) < -9007199254740992.000000000, toUInt16(0) <= -9007199254740992.000000000, toUInt16(0) > -9007199254740992.000000000, toUInt16(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt16(0), -9007199254740992.000000000 != toUInt16(0), -9007199254740992.000000000 < toUInt16(0), -9007199254740992.000000000 <= toUInt16(0), -9007199254740992.000000000 > toUInt16(0), -9007199254740992.000000000 >= toUInt16(0) , toInt16(0) = -9007199254740992.000000000, toInt16(0) != -9007199254740992.000000000, toInt16(0) < -9007199254740992.000000000, toInt16(0) <= -9007199254740992.000000000, toInt16(0) > -9007199254740992.000000000, toInt16(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt16(0), -9007199254740992.000000000 != toInt16(0), -9007199254740992.000000000 < toInt16(0), -9007199254740992.000000000 <= toInt16(0), -9007199254740992.000000000 > toInt16(0), -9007199254740992.000000000 >= toInt16(0) , toUInt32(0) = -9007199254740992.000000000, toUInt32(0) != -9007199254740992.000000000, toUInt32(0) < -9007199254740992.000000000, toUInt32(0) <= -9007199254740992.000000000, toUInt32(0) > -9007199254740992.000000000, toUInt32(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt32(0), -9007199254740992.000000000 != toUInt32(0), -9007199254740992.000000000 < toUInt32(0), -9007199254740992.000000000 <= toUInt32(0), -9007199254740992.000000000 > toUInt32(0), -9007199254740992.000000000 >= toUInt32(0) , toInt32(0) = -9007199254740992.000000000, toInt32(0) != -9007199254740992.000000000, toInt32(0) < -9007199254740992.000000000, toInt32(0) <= -9007199254740992.000000000, toInt32(0) > -9007199254740992.000000000, toInt32(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt32(0), -9007199254740992.000000000 != toInt32(0), -9007199254740992.000000000 < toInt32(0), -9007199254740992.000000000 <= toInt32(0), -9007199254740992.000000000 > toInt32(0), -9007199254740992.000000000 >= toInt32(0) , toUInt64(0) = -9007199254740992.000000000, toUInt64(0) != -9007199254740992.000000000, toUInt64(0) < -9007199254740992.000000000, toUInt64(0) <= -9007199254740992.000000000, toUInt64(0) > -9007199254740992.000000000, toUInt64(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt64(0), -9007199254740992.000000000 != toUInt64(0), -9007199254740992.000000000 < toUInt64(0), -9007199254740992.000000000 <= toUInt64(0), -9007199254740992.000000000 > toUInt64(0), -9007199254740992.000000000 >= toUInt64(0) , toInt64(0) = -9007199254740992.000000000, toInt64(0) != -9007199254740992.000000000, toInt64(0) < -9007199254740992.000000000, toInt64(0) <= -9007199254740992.000000000, toInt64(0) > -9007199254740992.000000000, toInt64(0) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt64(0), -9007199254740992.000000000 != toInt64(0), -9007199254740992.000000000 < toInt64(0), -9007199254740992.000000000 <= toInt64(0), -9007199254740992.000000000 > toInt64(0), -9007199254740992.000000000 >= toInt64(0) ;
SELECT '0', '-9007199254740994.000000000', 0 = -9007199254740994.000000000, 0 != -9007199254740994.000000000, 0 < -9007199254740994.000000000, 0 <= -9007199254740994.000000000, 0 > -9007199254740994.000000000, 0 >= -9007199254740994.000000000, -9007199254740994.000000000 = 0, -9007199254740994.000000000 != 0, -9007199254740994.000000000 < 0, -9007199254740994.000000000 <= 0, -9007199254740994.000000000 > 0, -9007199254740994.000000000 >= 0 , toUInt8(0) = -9007199254740994.000000000, toUInt8(0) != -9007199254740994.000000000, toUInt8(0) < -9007199254740994.000000000, toUInt8(0) <= -9007199254740994.000000000, toUInt8(0) > -9007199254740994.000000000, toUInt8(0) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt8(0), -9007199254740994.000000000 != toUInt8(0), -9007199254740994.000000000 < toUInt8(0), -9007199254740994.000000000 <= toUInt8(0), -9007199254740994.000000000 > toUInt8(0), -9007199254740994.000000000 >= toUInt8(0) , toInt8(0) = -9007199254740994.000000000, toInt8(0) != -9007199254740994.000000000, toInt8(0) < -9007199254740994.000000000, toInt8(0) <= -9007199254740994.000000000, toInt8(0) > -9007199254740994.000000000, toInt8(0) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt8(0), -9007199254740994.000000000 != toInt8(0), -9007199254740994.000000000 < toInt8(0), -9007199254740994.000000000 <= toInt8(0), -9007199254740994.000000000 > toInt8(0), -9007199254740994.000000000 >= toInt8(0) , toUInt16(0) = -9007199254740994.000000000, toUInt16(0) != -9007199254740994.000000000, toUInt16(0) < -9007199254740994.000000000, toUInt16(0) <= -9007199254740994.000000000, toUInt16(0) > -9007199254740994.000000000, toUInt16(0) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt16(0), -9007199254740994.000000000 != toUInt16(0), -9007199254740994.000000000 < toUInt16(0), -9007199254740994.000000000 <= toUInt16(0), -9007199254740994.000000000 > toUInt16(0), -9007199254740994.000000000 >= toUInt16(0) , toInt16(0) = -9007199254740994.000000000, toInt16(0) != -9007199254740994.000000000, toInt16(0) < -9007199254740994.000000000, toInt16(0) <= -9007199254740994.000000000, toInt16(0) > -9007199254740994.000000000, toInt16(0) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt16(0), -9007199254740994.000000000 != toInt16(0), -9007199254740994.000000000 < toInt16(0), -9007199254740994.000000000 <= toInt16(0), -9007199254740994.000000000 > toInt16(0), -9007199254740994.000000000 >= toInt16(0) , toUInt32(0) = -9007199254740994.000000000, toUInt32(0) != -9007199254740994.000000000, toUInt32(0) < -9007199254740994.000000000, toUInt32(0) <= -9007199254740994.000000000, toUInt32(0) > -9007199254740994.000000000, toUInt32(0) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt32(0), -9007199254740994.000000000 != toUInt32(0), -9007199254740994.000000000 < toUInt32(0), -9007199254740994.000000000 <= toUInt32(0), -9007199254740994.000000000 > toUInt32(0), -9007199254740994.000000000 >= toUInt32(0) , toInt32(0) = -9007199254740994.000000000, toInt32(0) != -9007199254740994.000000000, toInt32(0) < -9007199254740994.000000000, toInt32(0) <= -9007199254740994.000000000, toInt32(0) > -9007199254740994.000000000, toInt32(0) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt32(0), -9007199254740994.000000000 != toInt32(0), -9007199254740994.000000000 < toInt32(0), -9007199254740994.000000000 <= toInt32(0), -9007199254740994.000000000 > toInt32(0), -9007199254740994.000000000 >= toInt32(0) , toUInt64(0) = -9007199254740994.000000000, toUInt64(0) != -9007199254740994.000000000, toUInt64(0) < -9007199254740994.000000000, toUInt64(0) <= -9007199254740994.000000000, toUInt64(0) > -9007199254740994.000000000, toUInt64(0) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt64(0), -9007199254740994.000000000 != toUInt64(0), -9007199254740994.000000000 < toUInt64(0), -9007199254740994.000000000 <= toUInt64(0), -9007199254740994.000000000 > toUInt64(0), -9007199254740994.000000000 >= toUInt64(0) , toInt64(0) = -9007199254740994.000000000, toInt64(0) != -9007199254740994.000000000, toInt64(0) < -9007199254740994.000000000, toInt64(0) <= -9007199254740994.000000000, toInt64(0) > -9007199254740994.000000000, toInt64(0) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt64(0), -9007199254740994.000000000 != toInt64(0), -9007199254740994.000000000 < toInt64(0), -9007199254740994.000000000 <= toInt64(0), -9007199254740994.000000000 > toInt64(0), -9007199254740994.000000000 >= toInt64(0) ;
SELECT '0', '104.000000000', 0 = 104.000000000, 0 != 104.000000000, 0 < 104.000000000, 0 <= 104.000000000, 0 > 104.000000000, 0 >= 104.000000000, 104.000000000 = 0, 104.000000000 != 0, 104.000000000 < 0, 104.000000000 <= 0, 104.000000000 > 0, 104.000000000 >= 0 , toUInt8(0) = 104.000000000, toUInt8(0) != 104.000000000, toUInt8(0) < 104.000000000, toUInt8(0) <= 104.000000000, toUInt8(0) > 104.000000000, toUInt8(0) >= 104.000000000, 104.000000000 = toUInt8(0), 104.000000000 != toUInt8(0), 104.000000000 < toUInt8(0), 104.000000000 <= toUInt8(0), 104.000000000 > toUInt8(0), 104.000000000 >= toUInt8(0) , toInt8(0) = 104.000000000, toInt8(0) != 104.000000000, toInt8(0) < 104.000000000, toInt8(0) <= 104.000000000, toInt8(0) > 104.000000000, toInt8(0) >= 104.000000000, 104.000000000 = toInt8(0), 104.000000000 != toInt8(0), 104.000000000 < toInt8(0), 104.000000000 <= toInt8(0), 104.000000000 > toInt8(0), 104.000000000 >= toInt8(0) , toUInt16(0) = 104.000000000, toUInt16(0) != 104.000000000, toUInt16(0) < 104.000000000, toUInt16(0) <= 104.000000000, toUInt16(0) > 104.000000000, toUInt16(0) >= 104.000000000, 104.000000000 = toUInt16(0), 104.000000000 != toUInt16(0), 104.000000000 < toUInt16(0), 104.000000000 <= toUInt16(0), 104.000000000 > toUInt16(0), 104.000000000 >= toUInt16(0) , toInt16(0) = 104.000000000, toInt16(0) != 104.000000000, toInt16(0) < 104.000000000, toInt16(0) <= 104.000000000, toInt16(0) > 104.000000000, toInt16(0) >= 104.000000000, 104.000000000 = toInt16(0), 104.000000000 != toInt16(0), 104.000000000 < toInt16(0), 104.000000000 <= toInt16(0), 104.000000000 > toInt16(0), 104.000000000 >= toInt16(0) , toUInt32(0) = 104.000000000, toUInt32(0) != 104.000000000, toUInt32(0) < 104.000000000, toUInt32(0) <= 104.000000000, toUInt32(0) > 104.000000000, toUInt32(0) >= 104.000000000, 104.000000000 = toUInt32(0), 104.000000000 != toUInt32(0), 104.000000000 < toUInt32(0), 104.000000000 <= toUInt32(0), 104.000000000 > toUInt32(0), 104.000000000 >= toUInt32(0) , toInt32(0) = 104.000000000, toInt32(0) != 104.000000000, toInt32(0) < 104.000000000, toInt32(0) <= 104.000000000, toInt32(0) > 104.000000000, toInt32(0) >= 104.000000000, 104.000000000 = toInt32(0), 104.000000000 != toInt32(0), 104.000000000 < toInt32(0), 104.000000000 <= toInt32(0), 104.000000000 > toInt32(0), 104.000000000 >= toInt32(0) , toUInt64(0) = 104.000000000, toUInt64(0) != 104.000000000, toUInt64(0) < 104.000000000, toUInt64(0) <= 104.000000000, toUInt64(0) > 104.000000000, toUInt64(0) >= 104.000000000, 104.000000000 = toUInt64(0), 104.000000000 != toUInt64(0), 104.000000000 < toUInt64(0), 104.000000000 <= toUInt64(0), 104.000000000 > toUInt64(0), 104.000000000 >= toUInt64(0) , toInt64(0) = 104.000000000, toInt64(0) != 104.000000000, toInt64(0) < 104.000000000, toInt64(0) <= 104.000000000, toInt64(0) > 104.000000000, toInt64(0) >= 104.000000000, 104.000000000 = toInt64(0), 104.000000000 != toInt64(0), 104.000000000 < toInt64(0), 104.000000000 <= toInt64(0), 104.000000000 > toInt64(0), 104.000000000 >= toInt64(0) ;
SELECT '0', '-4503599627370496.000000000', 0 = -4503599627370496.000000000, 0 != -4503599627370496.000000000, 0 < -4503599627370496.000000000, 0 <= -4503599627370496.000000000, 0 > -4503599627370496.000000000, 0 >= -4503599627370496.000000000, -4503599627370496.000000000 = 0, -4503599627370496.000000000 != 0, -4503599627370496.000000000 < 0, -4503599627370496.000000000 <= 0, -4503599627370496.000000000 > 0, -4503599627370496.000000000 >= 0 , toUInt8(0) = -4503599627370496.000000000, toUInt8(0) != -4503599627370496.000000000, toUInt8(0) < -4503599627370496.000000000, toUInt8(0) <= -4503599627370496.000000000, toUInt8(0) > -4503599627370496.000000000, toUInt8(0) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt8(0), -4503599627370496.000000000 != toUInt8(0), -4503599627370496.000000000 < toUInt8(0), -4503599627370496.000000000 <= toUInt8(0), -4503599627370496.000000000 > toUInt8(0), -4503599627370496.000000000 >= toUInt8(0) , toInt8(0) = -4503599627370496.000000000, toInt8(0) != -4503599627370496.000000000, toInt8(0) < -4503599627370496.000000000, toInt8(0) <= -4503599627370496.000000000, toInt8(0) > -4503599627370496.000000000, toInt8(0) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt8(0), -4503599627370496.000000000 != toInt8(0), -4503599627370496.000000000 < toInt8(0), -4503599627370496.000000000 <= toInt8(0), -4503599627370496.000000000 > toInt8(0), -4503599627370496.000000000 >= toInt8(0) , toUInt16(0) = -4503599627370496.000000000, toUInt16(0) != -4503599627370496.000000000, toUInt16(0) < -4503599627370496.000000000, toUInt16(0) <= -4503599627370496.000000000, toUInt16(0) > -4503599627370496.000000000, toUInt16(0) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt16(0), -4503599627370496.000000000 != toUInt16(0), -4503599627370496.000000000 < toUInt16(0), -4503599627370496.000000000 <= toUInt16(0), -4503599627370496.000000000 > toUInt16(0), -4503599627370496.000000000 >= toUInt16(0) , toInt16(0) = -4503599627370496.000000000, toInt16(0) != -4503599627370496.000000000, toInt16(0) < -4503599627370496.000000000, toInt16(0) <= -4503599627370496.000000000, toInt16(0) > -4503599627370496.000000000, toInt16(0) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt16(0), -4503599627370496.000000000 != toInt16(0), -4503599627370496.000000000 < toInt16(0), -4503599627370496.000000000 <= toInt16(0), -4503599627370496.000000000 > toInt16(0), -4503599627370496.000000000 >= toInt16(0) , toUInt32(0) = -4503599627370496.000000000, toUInt32(0) != -4503599627370496.000000000, toUInt32(0) < -4503599627370496.000000000, toUInt32(0) <= -4503599627370496.000000000, toUInt32(0) > -4503599627370496.000000000, toUInt32(0) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt32(0), -4503599627370496.000000000 != toUInt32(0), -4503599627370496.000000000 < toUInt32(0), -4503599627370496.000000000 <= toUInt32(0), -4503599627370496.000000000 > toUInt32(0), -4503599627370496.000000000 >= toUInt32(0) , toInt32(0) = -4503599627370496.000000000, toInt32(0) != -4503599627370496.000000000, toInt32(0) < -4503599627370496.000000000, toInt32(0) <= -4503599627370496.000000000, toInt32(0) > -4503599627370496.000000000, toInt32(0) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt32(0), -4503599627370496.000000000 != toInt32(0), -4503599627370496.000000000 < toInt32(0), -4503599627370496.000000000 <= toInt32(0), -4503599627370496.000000000 > toInt32(0), -4503599627370496.000000000 >= toInt32(0) , toUInt64(0) = -4503599627370496.000000000, toUInt64(0) != -4503599627370496.000000000, toUInt64(0) < -4503599627370496.000000000, toUInt64(0) <= -4503599627370496.000000000, toUInt64(0) > -4503599627370496.000000000, toUInt64(0) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt64(0), -4503599627370496.000000000 != toUInt64(0), -4503599627370496.000000000 < toUInt64(0), -4503599627370496.000000000 <= toUInt64(0), -4503599627370496.000000000 > toUInt64(0), -4503599627370496.000000000 >= toUInt64(0) , toInt64(0) = -4503599627370496.000000000, toInt64(0) != -4503599627370496.000000000, toInt64(0) < -4503599627370496.000000000, toInt64(0) <= -4503599627370496.000000000, toInt64(0) > -4503599627370496.000000000, toInt64(0) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt64(0), -4503599627370496.000000000 != toInt64(0), -4503599627370496.000000000 < toInt64(0), -4503599627370496.000000000 <= toInt64(0), -4503599627370496.000000000 > toInt64(0), -4503599627370496.000000000 >= toInt64(0) ;
SELECT '0', '-0.500000000', 0 = -0.500000000, 0 != -0.500000000, 0 < -0.500000000, 0 <= -0.500000000, 0 > -0.500000000, 0 >= -0.500000000, -0.500000000 = 0, -0.500000000 != 0, -0.500000000 < 0, -0.500000000 <= 0, -0.500000000 > 0, -0.500000000 >= 0 , toUInt8(0) = -0.500000000, toUInt8(0) != -0.500000000, toUInt8(0) < -0.500000000, toUInt8(0) <= -0.500000000, toUInt8(0) > -0.500000000, toUInt8(0) >= -0.500000000, -0.500000000 = toUInt8(0), -0.500000000 != toUInt8(0), -0.500000000 < toUInt8(0), -0.500000000 <= toUInt8(0), -0.500000000 > toUInt8(0), -0.500000000 >= toUInt8(0) , toInt8(0) = -0.500000000, toInt8(0) != -0.500000000, toInt8(0) < -0.500000000, toInt8(0) <= -0.500000000, toInt8(0) > -0.500000000, toInt8(0) >= -0.500000000, -0.500000000 = toInt8(0), -0.500000000 != toInt8(0), -0.500000000 < toInt8(0), -0.500000000 <= toInt8(0), -0.500000000 > toInt8(0), -0.500000000 >= toInt8(0) , toUInt16(0) = -0.500000000, toUInt16(0) != -0.500000000, toUInt16(0) < -0.500000000, toUInt16(0) <= -0.500000000, toUInt16(0) > -0.500000000, toUInt16(0) >= -0.500000000, -0.500000000 = toUInt16(0), -0.500000000 != toUInt16(0), -0.500000000 < toUInt16(0), -0.500000000 <= toUInt16(0), -0.500000000 > toUInt16(0), -0.500000000 >= toUInt16(0) , toInt16(0) = -0.500000000, toInt16(0) != -0.500000000, toInt16(0) < -0.500000000, toInt16(0) <= -0.500000000, toInt16(0) > -0.500000000, toInt16(0) >= -0.500000000, -0.500000000 = toInt16(0), -0.500000000 != toInt16(0), -0.500000000 < toInt16(0), -0.500000000 <= toInt16(0), -0.500000000 > toInt16(0), -0.500000000 >= toInt16(0) , toUInt32(0) = -0.500000000, toUInt32(0) != -0.500000000, toUInt32(0) < -0.500000000, toUInt32(0) <= -0.500000000, toUInt32(0) > -0.500000000, toUInt32(0) >= -0.500000000, -0.500000000 = toUInt32(0), -0.500000000 != toUInt32(0), -0.500000000 < toUInt32(0), -0.500000000 <= toUInt32(0), -0.500000000 > toUInt32(0), -0.500000000 >= toUInt32(0) , toInt32(0) = -0.500000000, toInt32(0) != -0.500000000, toInt32(0) < -0.500000000, toInt32(0) <= -0.500000000, toInt32(0) > -0.500000000, toInt32(0) >= -0.500000000, -0.500000000 = toInt32(0), -0.500000000 != toInt32(0), -0.500000000 < toInt32(0), -0.500000000 <= toInt32(0), -0.500000000 > toInt32(0), -0.500000000 >= toInt32(0) , toUInt64(0) = -0.500000000, toUInt64(0) != -0.500000000, toUInt64(0) < -0.500000000, toUInt64(0) <= -0.500000000, toUInt64(0) > -0.500000000, toUInt64(0) >= -0.500000000, -0.500000000 = toUInt64(0), -0.500000000 != toUInt64(0), -0.500000000 < toUInt64(0), -0.500000000 <= toUInt64(0), -0.500000000 > toUInt64(0), -0.500000000 >= toUInt64(0) , toInt64(0) = -0.500000000, toInt64(0) != -0.500000000, toInt64(0) < -0.500000000, toInt64(0) <= -0.500000000, toInt64(0) > -0.500000000, toInt64(0) >= -0.500000000, -0.500000000 = toInt64(0), -0.500000000 != toInt64(0), -0.500000000 < toInt64(0), -0.500000000 <= toInt64(0), -0.500000000 > toInt64(0), -0.500000000 >= toInt64(0) ;
SELECT '0', '0.500000000', 0 = 0.500000000, 0 != 0.500000000, 0 < 0.500000000, 0 <= 0.500000000, 0 > 0.500000000, 0 >= 0.500000000, 0.500000000 = 0, 0.500000000 != 0, 0.500000000 < 0, 0.500000000 <= 0, 0.500000000 > 0, 0.500000000 >= 0 , toUInt8(0) = 0.500000000, toUInt8(0) != 0.500000000, toUInt8(0) < 0.500000000, toUInt8(0) <= 0.500000000, toUInt8(0) > 0.500000000, toUInt8(0) >= 0.500000000, 0.500000000 = toUInt8(0), 0.500000000 != toUInt8(0), 0.500000000 < toUInt8(0), 0.500000000 <= toUInt8(0), 0.500000000 > toUInt8(0), 0.500000000 >= toUInt8(0) , toInt8(0) = 0.500000000, toInt8(0) != 0.500000000, toInt8(0) < 0.500000000, toInt8(0) <= 0.500000000, toInt8(0) > 0.500000000, toInt8(0) >= 0.500000000, 0.500000000 = toInt8(0), 0.500000000 != toInt8(0), 0.500000000 < toInt8(0), 0.500000000 <= toInt8(0), 0.500000000 > toInt8(0), 0.500000000 >= toInt8(0) , toUInt16(0) = 0.500000000, toUInt16(0) != 0.500000000, toUInt16(0) < 0.500000000, toUInt16(0) <= 0.500000000, toUInt16(0) > 0.500000000, toUInt16(0) >= 0.500000000, 0.500000000 = toUInt16(0), 0.500000000 != toUInt16(0), 0.500000000 < toUInt16(0), 0.500000000 <= toUInt16(0), 0.500000000 > toUInt16(0), 0.500000000 >= toUInt16(0) , toInt16(0) = 0.500000000, toInt16(0) != 0.500000000, toInt16(0) < 0.500000000, toInt16(0) <= 0.500000000, toInt16(0) > 0.500000000, toInt16(0) >= 0.500000000, 0.500000000 = toInt16(0), 0.500000000 != toInt16(0), 0.500000000 < toInt16(0), 0.500000000 <= toInt16(0), 0.500000000 > toInt16(0), 0.500000000 >= toInt16(0) , toUInt32(0) = 0.500000000, toUInt32(0) != 0.500000000, toUInt32(0) < 0.500000000, toUInt32(0) <= 0.500000000, toUInt32(0) > 0.500000000, toUInt32(0) >= 0.500000000, 0.500000000 = toUInt32(0), 0.500000000 != toUInt32(0), 0.500000000 < toUInt32(0), 0.500000000 <= toUInt32(0), 0.500000000 > toUInt32(0), 0.500000000 >= toUInt32(0) , toInt32(0) = 0.500000000, toInt32(0) != 0.500000000, toInt32(0) < 0.500000000, toInt32(0) <= 0.500000000, toInt32(0) > 0.500000000, toInt32(0) >= 0.500000000, 0.500000000 = toInt32(0), 0.500000000 != toInt32(0), 0.500000000 < toInt32(0), 0.500000000 <= toInt32(0), 0.500000000 > toInt32(0), 0.500000000 >= toInt32(0) , toUInt64(0) = 0.500000000, toUInt64(0) != 0.500000000, toUInt64(0) < 0.500000000, toUInt64(0) <= 0.500000000, toUInt64(0) > 0.500000000, toUInt64(0) >= 0.500000000, 0.500000000 = toUInt64(0), 0.500000000 != toUInt64(0), 0.500000000 < toUInt64(0), 0.500000000 <= toUInt64(0), 0.500000000 > toUInt64(0), 0.500000000 >= toUInt64(0) , toInt64(0) = 0.500000000, toInt64(0) != 0.500000000, toInt64(0) < 0.500000000, toInt64(0) <= 0.500000000, toInt64(0) > 0.500000000, toInt64(0) >= 0.500000000, 0.500000000 = toInt64(0), 0.500000000 != toInt64(0), 0.500000000 < toInt64(0), 0.500000000 <= toInt64(0), 0.500000000 > toInt64(0), 0.500000000 >= toInt64(0) ;
SELECT '0', '-1.500000000', 0 = -1.500000000, 0 != -1.500000000, 0 < -1.500000000, 0 <= -1.500000000, 0 > -1.500000000, 0 >= -1.500000000, -1.500000000 = 0, -1.500000000 != 0, -1.500000000 < 0, -1.500000000 <= 0, -1.500000000 > 0, -1.500000000 >= 0 , toUInt8(0) = -1.500000000, toUInt8(0) != -1.500000000, toUInt8(0) < -1.500000000, toUInt8(0) <= -1.500000000, toUInt8(0) > -1.500000000, toUInt8(0) >= -1.500000000, -1.500000000 = toUInt8(0), -1.500000000 != toUInt8(0), -1.500000000 < toUInt8(0), -1.500000000 <= toUInt8(0), -1.500000000 > toUInt8(0), -1.500000000 >= toUInt8(0) , toInt8(0) = -1.500000000, toInt8(0) != -1.500000000, toInt8(0) < -1.500000000, toInt8(0) <= -1.500000000, toInt8(0) > -1.500000000, toInt8(0) >= -1.500000000, -1.500000000 = toInt8(0), -1.500000000 != toInt8(0), -1.500000000 < toInt8(0), -1.500000000 <= toInt8(0), -1.500000000 > toInt8(0), -1.500000000 >= toInt8(0) , toUInt16(0) = -1.500000000, toUInt16(0) != -1.500000000, toUInt16(0) < -1.500000000, toUInt16(0) <= -1.500000000, toUInt16(0) > -1.500000000, toUInt16(0) >= -1.500000000, -1.500000000 = toUInt16(0), -1.500000000 != toUInt16(0), -1.500000000 < toUInt16(0), -1.500000000 <= toUInt16(0), -1.500000000 > toUInt16(0), -1.500000000 >= toUInt16(0) , toInt16(0) = -1.500000000, toInt16(0) != -1.500000000, toInt16(0) < -1.500000000, toInt16(0) <= -1.500000000, toInt16(0) > -1.500000000, toInt16(0) >= -1.500000000, -1.500000000 = toInt16(0), -1.500000000 != toInt16(0), -1.500000000 < toInt16(0), -1.500000000 <= toInt16(0), -1.500000000 > toInt16(0), -1.500000000 >= toInt16(0) , toUInt32(0) = -1.500000000, toUInt32(0) != -1.500000000, toUInt32(0) < -1.500000000, toUInt32(0) <= -1.500000000, toUInt32(0) > -1.500000000, toUInt32(0) >= -1.500000000, -1.500000000 = toUInt32(0), -1.500000000 != toUInt32(0), -1.500000000 < toUInt32(0), -1.500000000 <= toUInt32(0), -1.500000000 > toUInt32(0), -1.500000000 >= toUInt32(0) , toInt32(0) = -1.500000000, toInt32(0) != -1.500000000, toInt32(0) < -1.500000000, toInt32(0) <= -1.500000000, toInt32(0) > -1.500000000, toInt32(0) >= -1.500000000, -1.500000000 = toInt32(0), -1.500000000 != toInt32(0), -1.500000000 < toInt32(0), -1.500000000 <= toInt32(0), -1.500000000 > toInt32(0), -1.500000000 >= toInt32(0) , toUInt64(0) = -1.500000000, toUInt64(0) != -1.500000000, toUInt64(0) < -1.500000000, toUInt64(0) <= -1.500000000, toUInt64(0) > -1.500000000, toUInt64(0) >= -1.500000000, -1.500000000 = toUInt64(0), -1.500000000 != toUInt64(0), -1.500000000 < toUInt64(0), -1.500000000 <= toUInt64(0), -1.500000000 > toUInt64(0), -1.500000000 >= toUInt64(0) , toInt64(0) = -1.500000000, toInt64(0) != -1.500000000, toInt64(0) < -1.500000000, toInt64(0) <= -1.500000000, toInt64(0) > -1.500000000, toInt64(0) >= -1.500000000, -1.500000000 = toInt64(0), -1.500000000 != toInt64(0), -1.500000000 < toInt64(0), -1.500000000 <= toInt64(0), -1.500000000 > toInt64(0), -1.500000000 >= toInt64(0) ;
SELECT '0', '1.500000000', 0 = 1.500000000, 0 != 1.500000000, 0 < 1.500000000, 0 <= 1.500000000, 0 > 1.500000000, 0 >= 1.500000000, 1.500000000 = 0, 1.500000000 != 0, 1.500000000 < 0, 1.500000000 <= 0, 1.500000000 > 0, 1.500000000 >= 0 , toUInt8(0) = 1.500000000, toUInt8(0) != 1.500000000, toUInt8(0) < 1.500000000, toUInt8(0) <= 1.500000000, toUInt8(0) > 1.500000000, toUInt8(0) >= 1.500000000, 1.500000000 = toUInt8(0), 1.500000000 != toUInt8(0), 1.500000000 < toUInt8(0), 1.500000000 <= toUInt8(0), 1.500000000 > toUInt8(0), 1.500000000 >= toUInt8(0) , toInt8(0) = 1.500000000, toInt8(0) != 1.500000000, toInt8(0) < 1.500000000, toInt8(0) <= 1.500000000, toInt8(0) > 1.500000000, toInt8(0) >= 1.500000000, 1.500000000 = toInt8(0), 1.500000000 != toInt8(0), 1.500000000 < toInt8(0), 1.500000000 <= toInt8(0), 1.500000000 > toInt8(0), 1.500000000 >= toInt8(0) , toUInt16(0) = 1.500000000, toUInt16(0) != 1.500000000, toUInt16(0) < 1.500000000, toUInt16(0) <= 1.500000000, toUInt16(0) > 1.500000000, toUInt16(0) >= 1.500000000, 1.500000000 = toUInt16(0), 1.500000000 != toUInt16(0), 1.500000000 < toUInt16(0), 1.500000000 <= toUInt16(0), 1.500000000 > toUInt16(0), 1.500000000 >= toUInt16(0) , toInt16(0) = 1.500000000, toInt16(0) != 1.500000000, toInt16(0) < 1.500000000, toInt16(0) <= 1.500000000, toInt16(0) > 1.500000000, toInt16(0) >= 1.500000000, 1.500000000 = toInt16(0), 1.500000000 != toInt16(0), 1.500000000 < toInt16(0), 1.500000000 <= toInt16(0), 1.500000000 > toInt16(0), 1.500000000 >= toInt16(0) , toUInt32(0) = 1.500000000, toUInt32(0) != 1.500000000, toUInt32(0) < 1.500000000, toUInt32(0) <= 1.500000000, toUInt32(0) > 1.500000000, toUInt32(0) >= 1.500000000, 1.500000000 = toUInt32(0), 1.500000000 != toUInt32(0), 1.500000000 < toUInt32(0), 1.500000000 <= toUInt32(0), 1.500000000 > toUInt32(0), 1.500000000 >= toUInt32(0) , toInt32(0) = 1.500000000, toInt32(0) != 1.500000000, toInt32(0) < 1.500000000, toInt32(0) <= 1.500000000, toInt32(0) > 1.500000000, toInt32(0) >= 1.500000000, 1.500000000 = toInt32(0), 1.500000000 != toInt32(0), 1.500000000 < toInt32(0), 1.500000000 <= toInt32(0), 1.500000000 > toInt32(0), 1.500000000 >= toInt32(0) , toUInt64(0) = 1.500000000, toUInt64(0) != 1.500000000, toUInt64(0) < 1.500000000, toUInt64(0) <= 1.500000000, toUInt64(0) > 1.500000000, toUInt64(0) >= 1.500000000, 1.500000000 = toUInt64(0), 1.500000000 != toUInt64(0), 1.500000000 < toUInt64(0), 1.500000000 <= toUInt64(0), 1.500000000 > toUInt64(0), 1.500000000 >= toUInt64(0) , toInt64(0) = 1.500000000, toInt64(0) != 1.500000000, toInt64(0) < 1.500000000, toInt64(0) <= 1.500000000, toInt64(0) > 1.500000000, toInt64(0) >= 1.500000000, 1.500000000 = toInt64(0), 1.500000000 != toInt64(0), 1.500000000 < toInt64(0), 1.500000000 <= toInt64(0), 1.500000000 > toInt64(0), 1.500000000 >= toInt64(0) ;
SELECT '0', '9007199254740992.000000000', 0 = 9007199254740992.000000000, 0 != 9007199254740992.000000000, 0 < 9007199254740992.000000000, 0 <= 9007199254740992.000000000, 0 > 9007199254740992.000000000, 0 >= 9007199254740992.000000000, 9007199254740992.000000000 = 0, 9007199254740992.000000000 != 0, 9007199254740992.000000000 < 0, 9007199254740992.000000000 <= 0, 9007199254740992.000000000 > 0, 9007199254740992.000000000 >= 0 , toUInt8(0) = 9007199254740992.000000000, toUInt8(0) != 9007199254740992.000000000, toUInt8(0) < 9007199254740992.000000000, toUInt8(0) <= 9007199254740992.000000000, toUInt8(0) > 9007199254740992.000000000, toUInt8(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt8(0), 9007199254740992.000000000 != toUInt8(0), 9007199254740992.000000000 < toUInt8(0), 9007199254740992.000000000 <= toUInt8(0), 9007199254740992.000000000 > toUInt8(0), 9007199254740992.000000000 >= toUInt8(0) , toInt8(0) = 9007199254740992.000000000, toInt8(0) != 9007199254740992.000000000, toInt8(0) < 9007199254740992.000000000, toInt8(0) <= 9007199254740992.000000000, toInt8(0) > 9007199254740992.000000000, toInt8(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(0), 9007199254740992.000000000 != toInt8(0), 9007199254740992.000000000 < toInt8(0), 9007199254740992.000000000 <= toInt8(0), 9007199254740992.000000000 > toInt8(0), 9007199254740992.000000000 >= toInt8(0) , toUInt16(0) = 9007199254740992.000000000, toUInt16(0) != 9007199254740992.000000000, toUInt16(0) < 9007199254740992.000000000, toUInt16(0) <= 9007199254740992.000000000, toUInt16(0) > 9007199254740992.000000000, toUInt16(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt16(0), 9007199254740992.000000000 != toUInt16(0), 9007199254740992.000000000 < toUInt16(0), 9007199254740992.000000000 <= toUInt16(0), 9007199254740992.000000000 > toUInt16(0), 9007199254740992.000000000 >= toUInt16(0) , toInt16(0) = 9007199254740992.000000000, toInt16(0) != 9007199254740992.000000000, toInt16(0) < 9007199254740992.000000000, toInt16(0) <= 9007199254740992.000000000, toInt16(0) > 9007199254740992.000000000, toInt16(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(0), 9007199254740992.000000000 != toInt16(0), 9007199254740992.000000000 < toInt16(0), 9007199254740992.000000000 <= toInt16(0), 9007199254740992.000000000 > toInt16(0), 9007199254740992.000000000 >= toInt16(0) , toUInt32(0) = 9007199254740992.000000000, toUInt32(0) != 9007199254740992.000000000, toUInt32(0) < 9007199254740992.000000000, toUInt32(0) <= 9007199254740992.000000000, toUInt32(0) > 9007199254740992.000000000, toUInt32(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt32(0), 9007199254740992.000000000 != toUInt32(0), 9007199254740992.000000000 < toUInt32(0), 9007199254740992.000000000 <= toUInt32(0), 9007199254740992.000000000 > toUInt32(0), 9007199254740992.000000000 >= toUInt32(0) , toInt32(0) = 9007199254740992.000000000, toInt32(0) != 9007199254740992.000000000, toInt32(0) < 9007199254740992.000000000, toInt32(0) <= 9007199254740992.000000000, toInt32(0) > 9007199254740992.000000000, toInt32(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(0), 9007199254740992.000000000 != toInt32(0), 9007199254740992.000000000 < toInt32(0), 9007199254740992.000000000 <= toInt32(0), 9007199254740992.000000000 > toInt32(0), 9007199254740992.000000000 >= toInt32(0) , toUInt64(0) = 9007199254740992.000000000, toUInt64(0) != 9007199254740992.000000000, toUInt64(0) < 9007199254740992.000000000, toUInt64(0) <= 9007199254740992.000000000, toUInt64(0) > 9007199254740992.000000000, toUInt64(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(0), 9007199254740992.000000000 != toUInt64(0), 9007199254740992.000000000 < toUInt64(0), 9007199254740992.000000000 <= toUInt64(0), 9007199254740992.000000000 > toUInt64(0), 9007199254740992.000000000 >= toUInt64(0) , toInt64(0) = 9007199254740992.000000000, toInt64(0) != 9007199254740992.000000000, toInt64(0) < 9007199254740992.000000000, toInt64(0) <= 9007199254740992.000000000, toInt64(0) > 9007199254740992.000000000, toInt64(0) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(0), 9007199254740992.000000000 != toInt64(0), 9007199254740992.000000000 < toInt64(0), 9007199254740992.000000000 <= toInt64(0), 9007199254740992.000000000 > toInt64(0), 9007199254740992.000000000 >= toInt64(0) ;
SELECT '0', '2251799813685247.500000000', 0 = 2251799813685247.500000000, 0 != 2251799813685247.500000000, 0 < 2251799813685247.500000000, 0 <= 2251799813685247.500000000, 0 > 2251799813685247.500000000, 0 >= 2251799813685247.500000000, 2251799813685247.500000000 = 0, 2251799813685247.500000000 != 0, 2251799813685247.500000000 < 0, 2251799813685247.500000000 <= 0, 2251799813685247.500000000 > 0, 2251799813685247.500000000 >= 0 , toUInt8(0) = 2251799813685247.500000000, toUInt8(0) != 2251799813685247.500000000, toUInt8(0) < 2251799813685247.500000000, toUInt8(0) <= 2251799813685247.500000000, toUInt8(0) > 2251799813685247.500000000, toUInt8(0) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt8(0), 2251799813685247.500000000 != toUInt8(0), 2251799813685247.500000000 < toUInt8(0), 2251799813685247.500000000 <= toUInt8(0), 2251799813685247.500000000 > toUInt8(0), 2251799813685247.500000000 >= toUInt8(0) , toInt8(0) = 2251799813685247.500000000, toInt8(0) != 2251799813685247.500000000, toInt8(0) < 2251799813685247.500000000, toInt8(0) <= 2251799813685247.500000000, toInt8(0) > 2251799813685247.500000000, toInt8(0) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt8(0), 2251799813685247.500000000 != toInt8(0), 2251799813685247.500000000 < toInt8(0), 2251799813685247.500000000 <= toInt8(0), 2251799813685247.500000000 > toInt8(0), 2251799813685247.500000000 >= toInt8(0) , toUInt16(0) = 2251799813685247.500000000, toUInt16(0) != 2251799813685247.500000000, toUInt16(0) < 2251799813685247.500000000, toUInt16(0) <= 2251799813685247.500000000, toUInt16(0) > 2251799813685247.500000000, toUInt16(0) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt16(0), 2251799813685247.500000000 != toUInt16(0), 2251799813685247.500000000 < toUInt16(0), 2251799813685247.500000000 <= toUInt16(0), 2251799813685247.500000000 > toUInt16(0), 2251799813685247.500000000 >= toUInt16(0) , toInt16(0) = 2251799813685247.500000000, toInt16(0) != 2251799813685247.500000000, toInt16(0) < 2251799813685247.500000000, toInt16(0) <= 2251799813685247.500000000, toInt16(0) > 2251799813685247.500000000, toInt16(0) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt16(0), 2251799813685247.500000000 != toInt16(0), 2251799813685247.500000000 < toInt16(0), 2251799813685247.500000000 <= toInt16(0), 2251799813685247.500000000 > toInt16(0), 2251799813685247.500000000 >= toInt16(0) , toUInt32(0) = 2251799813685247.500000000, toUInt32(0) != 2251799813685247.500000000, toUInt32(0) < 2251799813685247.500000000, toUInt32(0) <= 2251799813685247.500000000, toUInt32(0) > 2251799813685247.500000000, toUInt32(0) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt32(0), 2251799813685247.500000000 != toUInt32(0), 2251799813685247.500000000 < toUInt32(0), 2251799813685247.500000000 <= toUInt32(0), 2251799813685247.500000000 > toUInt32(0), 2251799813685247.500000000 >= toUInt32(0) , toInt32(0) = 2251799813685247.500000000, toInt32(0) != 2251799813685247.500000000, toInt32(0) < 2251799813685247.500000000, toInt32(0) <= 2251799813685247.500000000, toInt32(0) > 2251799813685247.500000000, toInt32(0) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt32(0), 2251799813685247.500000000 != toInt32(0), 2251799813685247.500000000 < toInt32(0), 2251799813685247.500000000 <= toInt32(0), 2251799813685247.500000000 > toInt32(0), 2251799813685247.500000000 >= toInt32(0) , toUInt64(0) = 2251799813685247.500000000, toUInt64(0) != 2251799813685247.500000000, toUInt64(0) < 2251799813685247.500000000, toUInt64(0) <= 2251799813685247.500000000, toUInt64(0) > 2251799813685247.500000000, toUInt64(0) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt64(0), 2251799813685247.500000000 != toUInt64(0), 2251799813685247.500000000 < toUInt64(0), 2251799813685247.500000000 <= toUInt64(0), 2251799813685247.500000000 > toUInt64(0), 2251799813685247.500000000 >= toUInt64(0) , toInt64(0) = 2251799813685247.500000000, toInt64(0) != 2251799813685247.500000000, toInt64(0) < 2251799813685247.500000000, toInt64(0) <= 2251799813685247.500000000, toInt64(0) > 2251799813685247.500000000, toInt64(0) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt64(0), 2251799813685247.500000000 != toInt64(0), 2251799813685247.500000000 < toInt64(0), 2251799813685247.500000000 <= toInt64(0), 2251799813685247.500000000 > toInt64(0), 2251799813685247.500000000 >= toInt64(0) ;
SELECT '0', '2251799813685248.500000000', 0 = 2251799813685248.500000000, 0 != 2251799813685248.500000000, 0 < 2251799813685248.500000000, 0 <= 2251799813685248.500000000, 0 > 2251799813685248.500000000, 0 >= 2251799813685248.500000000, 2251799813685248.500000000 = 0, 2251799813685248.500000000 != 0, 2251799813685248.500000000 < 0, 2251799813685248.500000000 <= 0, 2251799813685248.500000000 > 0, 2251799813685248.500000000 >= 0 , toUInt8(0) = 2251799813685248.500000000, toUInt8(0) != 2251799813685248.500000000, toUInt8(0) < 2251799813685248.500000000, toUInt8(0) <= 2251799813685248.500000000, toUInt8(0) > 2251799813685248.500000000, toUInt8(0) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt8(0), 2251799813685248.500000000 != toUInt8(0), 2251799813685248.500000000 < toUInt8(0), 2251799813685248.500000000 <= toUInt8(0), 2251799813685248.500000000 > toUInt8(0), 2251799813685248.500000000 >= toUInt8(0) , toInt8(0) = 2251799813685248.500000000, toInt8(0) != 2251799813685248.500000000, toInt8(0) < 2251799813685248.500000000, toInt8(0) <= 2251799813685248.500000000, toInt8(0) > 2251799813685248.500000000, toInt8(0) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt8(0), 2251799813685248.500000000 != toInt8(0), 2251799813685248.500000000 < toInt8(0), 2251799813685248.500000000 <= toInt8(0), 2251799813685248.500000000 > toInt8(0), 2251799813685248.500000000 >= toInt8(0) , toUInt16(0) = 2251799813685248.500000000, toUInt16(0) != 2251799813685248.500000000, toUInt16(0) < 2251799813685248.500000000, toUInt16(0) <= 2251799813685248.500000000, toUInt16(0) > 2251799813685248.500000000, toUInt16(0) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt16(0), 2251799813685248.500000000 != toUInt16(0), 2251799813685248.500000000 < toUInt16(0), 2251799813685248.500000000 <= toUInt16(0), 2251799813685248.500000000 > toUInt16(0), 2251799813685248.500000000 >= toUInt16(0) , toInt16(0) = 2251799813685248.500000000, toInt16(0) != 2251799813685248.500000000, toInt16(0) < 2251799813685248.500000000, toInt16(0) <= 2251799813685248.500000000, toInt16(0) > 2251799813685248.500000000, toInt16(0) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt16(0), 2251799813685248.500000000 != toInt16(0), 2251799813685248.500000000 < toInt16(0), 2251799813685248.500000000 <= toInt16(0), 2251799813685248.500000000 > toInt16(0), 2251799813685248.500000000 >= toInt16(0) , toUInt32(0) = 2251799813685248.500000000, toUInt32(0) != 2251799813685248.500000000, toUInt32(0) < 2251799813685248.500000000, toUInt32(0) <= 2251799813685248.500000000, toUInt32(0) > 2251799813685248.500000000, toUInt32(0) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt32(0), 2251799813685248.500000000 != toUInt32(0), 2251799813685248.500000000 < toUInt32(0), 2251799813685248.500000000 <= toUInt32(0), 2251799813685248.500000000 > toUInt32(0), 2251799813685248.500000000 >= toUInt32(0) , toInt32(0) = 2251799813685248.500000000, toInt32(0) != 2251799813685248.500000000, toInt32(0) < 2251799813685248.500000000, toInt32(0) <= 2251799813685248.500000000, toInt32(0) > 2251799813685248.500000000, toInt32(0) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt32(0), 2251799813685248.500000000 != toInt32(0), 2251799813685248.500000000 < toInt32(0), 2251799813685248.500000000 <= toInt32(0), 2251799813685248.500000000 > toInt32(0), 2251799813685248.500000000 >= toInt32(0) , toUInt64(0) = 2251799813685248.500000000, toUInt64(0) != 2251799813685248.500000000, toUInt64(0) < 2251799813685248.500000000, toUInt64(0) <= 2251799813685248.500000000, toUInt64(0) > 2251799813685248.500000000, toUInt64(0) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt64(0), 2251799813685248.500000000 != toUInt64(0), 2251799813685248.500000000 < toUInt64(0), 2251799813685248.500000000 <= toUInt64(0), 2251799813685248.500000000 > toUInt64(0), 2251799813685248.500000000 >= toUInt64(0) , toInt64(0) = 2251799813685248.500000000, toInt64(0) != 2251799813685248.500000000, toInt64(0) < 2251799813685248.500000000, toInt64(0) <= 2251799813685248.500000000, toInt64(0) > 2251799813685248.500000000, toInt64(0) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt64(0), 2251799813685248.500000000 != toInt64(0), 2251799813685248.500000000 < toInt64(0), 2251799813685248.500000000 <= toInt64(0), 2251799813685248.500000000 > toInt64(0), 2251799813685248.500000000 >= toInt64(0) ;
SELECT '0', '1152921504606846976.000000000', 0 = 1152921504606846976.000000000, 0 != 1152921504606846976.000000000, 0 < 1152921504606846976.000000000, 0 <= 1152921504606846976.000000000, 0 > 1152921504606846976.000000000, 0 >= 1152921504606846976.000000000, 1152921504606846976.000000000 = 0, 1152921504606846976.000000000 != 0, 1152921504606846976.000000000 < 0, 1152921504606846976.000000000 <= 0, 1152921504606846976.000000000 > 0, 1152921504606846976.000000000 >= 0 , toUInt8(0) = 1152921504606846976.000000000, toUInt8(0) != 1152921504606846976.000000000, toUInt8(0) < 1152921504606846976.000000000, toUInt8(0) <= 1152921504606846976.000000000, toUInt8(0) > 1152921504606846976.000000000, toUInt8(0) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt8(0), 1152921504606846976.000000000 != toUInt8(0), 1152921504606846976.000000000 < toUInt8(0), 1152921504606846976.000000000 <= toUInt8(0), 1152921504606846976.000000000 > toUInt8(0), 1152921504606846976.000000000 >= toUInt8(0) , toInt8(0) = 1152921504606846976.000000000, toInt8(0) != 1152921504606846976.000000000, toInt8(0) < 1152921504606846976.000000000, toInt8(0) <= 1152921504606846976.000000000, toInt8(0) > 1152921504606846976.000000000, toInt8(0) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt8(0), 1152921504606846976.000000000 != toInt8(0), 1152921504606846976.000000000 < toInt8(0), 1152921504606846976.000000000 <= toInt8(0), 1152921504606846976.000000000 > toInt8(0), 1152921504606846976.000000000 >= toInt8(0) , toUInt16(0) = 1152921504606846976.000000000, toUInt16(0) != 1152921504606846976.000000000, toUInt16(0) < 1152921504606846976.000000000, toUInt16(0) <= 1152921504606846976.000000000, toUInt16(0) > 1152921504606846976.000000000, toUInt16(0) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt16(0), 1152921504606846976.000000000 != toUInt16(0), 1152921504606846976.000000000 < toUInt16(0), 1152921504606846976.000000000 <= toUInt16(0), 1152921504606846976.000000000 > toUInt16(0), 1152921504606846976.000000000 >= toUInt16(0) , toInt16(0) = 1152921504606846976.000000000, toInt16(0) != 1152921504606846976.000000000, toInt16(0) < 1152921504606846976.000000000, toInt16(0) <= 1152921504606846976.000000000, toInt16(0) > 1152921504606846976.000000000, toInt16(0) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt16(0), 1152921504606846976.000000000 != toInt16(0), 1152921504606846976.000000000 < toInt16(0), 1152921504606846976.000000000 <= toInt16(0), 1152921504606846976.000000000 > toInt16(0), 1152921504606846976.000000000 >= toInt16(0) , toUInt32(0) = 1152921504606846976.000000000, toUInt32(0) != 1152921504606846976.000000000, toUInt32(0) < 1152921504606846976.000000000, toUInt32(0) <= 1152921504606846976.000000000, toUInt32(0) > 1152921504606846976.000000000, toUInt32(0) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt32(0), 1152921504606846976.000000000 != toUInt32(0), 1152921504606846976.000000000 < toUInt32(0), 1152921504606846976.000000000 <= toUInt32(0), 1152921504606846976.000000000 > toUInt32(0), 1152921504606846976.000000000 >= toUInt32(0) , toInt32(0) = 1152921504606846976.000000000, toInt32(0) != 1152921504606846976.000000000, toInt32(0) < 1152921504606846976.000000000, toInt32(0) <= 1152921504606846976.000000000, toInt32(0) > 1152921504606846976.000000000, toInt32(0) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt32(0), 1152921504606846976.000000000 != toInt32(0), 1152921504606846976.000000000 < toInt32(0), 1152921504606846976.000000000 <= toInt32(0), 1152921504606846976.000000000 > toInt32(0), 1152921504606846976.000000000 >= toInt32(0) , toUInt64(0) = 1152921504606846976.000000000, toUInt64(0) != 1152921504606846976.000000000, toUInt64(0) < 1152921504606846976.000000000, toUInt64(0) <= 1152921504606846976.000000000, toUInt64(0) > 1152921504606846976.000000000, toUInt64(0) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt64(0), 1152921504606846976.000000000 != toUInt64(0), 1152921504606846976.000000000 < toUInt64(0), 1152921504606846976.000000000 <= toUInt64(0), 1152921504606846976.000000000 > toUInt64(0), 1152921504606846976.000000000 >= toUInt64(0) , toInt64(0) = 1152921504606846976.000000000, toInt64(0) != 1152921504606846976.000000000, toInt64(0) < 1152921504606846976.000000000, toInt64(0) <= 1152921504606846976.000000000, toInt64(0) > 1152921504606846976.000000000, toInt64(0) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt64(0), 1152921504606846976.000000000 != toInt64(0), 1152921504606846976.000000000 < toInt64(0), 1152921504606846976.000000000 <= toInt64(0), 1152921504606846976.000000000 > toInt64(0), 1152921504606846976.000000000 >= toInt64(0) ;
SELECT '0', '-1152921504606846976.000000000', 0 = -1152921504606846976.000000000, 0 != -1152921504606846976.000000000, 0 < -1152921504606846976.000000000, 0 <= -1152921504606846976.000000000, 0 > -1152921504606846976.000000000, 0 >= -1152921504606846976.000000000, -1152921504606846976.000000000 = 0, -1152921504606846976.000000000 != 0, -1152921504606846976.000000000 < 0, -1152921504606846976.000000000 <= 0, -1152921504606846976.000000000 > 0, -1152921504606846976.000000000 >= 0 , toUInt8(0) = -1152921504606846976.000000000, toUInt8(0) != -1152921504606846976.000000000, toUInt8(0) < -1152921504606846976.000000000, toUInt8(0) <= -1152921504606846976.000000000, toUInt8(0) > -1152921504606846976.000000000, toUInt8(0) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt8(0), -1152921504606846976.000000000 != toUInt8(0), -1152921504606846976.000000000 < toUInt8(0), -1152921504606846976.000000000 <= toUInt8(0), -1152921504606846976.000000000 > toUInt8(0), -1152921504606846976.000000000 >= toUInt8(0) , toInt8(0) = -1152921504606846976.000000000, toInt8(0) != -1152921504606846976.000000000, toInt8(0) < -1152921504606846976.000000000, toInt8(0) <= -1152921504606846976.000000000, toInt8(0) > -1152921504606846976.000000000, toInt8(0) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt8(0), -1152921504606846976.000000000 != toInt8(0), -1152921504606846976.000000000 < toInt8(0), -1152921504606846976.000000000 <= toInt8(0), -1152921504606846976.000000000 > toInt8(0), -1152921504606846976.000000000 >= toInt8(0) , toUInt16(0) = -1152921504606846976.000000000, toUInt16(0) != -1152921504606846976.000000000, toUInt16(0) < -1152921504606846976.000000000, toUInt16(0) <= -1152921504606846976.000000000, toUInt16(0) > -1152921504606846976.000000000, toUInt16(0) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt16(0), -1152921504606846976.000000000 != toUInt16(0), -1152921504606846976.000000000 < toUInt16(0), -1152921504606846976.000000000 <= toUInt16(0), -1152921504606846976.000000000 > toUInt16(0), -1152921504606846976.000000000 >= toUInt16(0) , toInt16(0) = -1152921504606846976.000000000, toInt16(0) != -1152921504606846976.000000000, toInt16(0) < -1152921504606846976.000000000, toInt16(0) <= -1152921504606846976.000000000, toInt16(0) > -1152921504606846976.000000000, toInt16(0) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt16(0), -1152921504606846976.000000000 != toInt16(0), -1152921504606846976.000000000 < toInt16(0), -1152921504606846976.000000000 <= toInt16(0), -1152921504606846976.000000000 > toInt16(0), -1152921504606846976.000000000 >= toInt16(0) , toUInt32(0) = -1152921504606846976.000000000, toUInt32(0) != -1152921504606846976.000000000, toUInt32(0) < -1152921504606846976.000000000, toUInt32(0) <= -1152921504606846976.000000000, toUInt32(0) > -1152921504606846976.000000000, toUInt32(0) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt32(0), -1152921504606846976.000000000 != toUInt32(0), -1152921504606846976.000000000 < toUInt32(0), -1152921504606846976.000000000 <= toUInt32(0), -1152921504606846976.000000000 > toUInt32(0), -1152921504606846976.000000000 >= toUInt32(0) , toInt32(0) = -1152921504606846976.000000000, toInt32(0) != -1152921504606846976.000000000, toInt32(0) < -1152921504606846976.000000000, toInt32(0) <= -1152921504606846976.000000000, toInt32(0) > -1152921504606846976.000000000, toInt32(0) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt32(0), -1152921504606846976.000000000 != toInt32(0), -1152921504606846976.000000000 < toInt32(0), -1152921504606846976.000000000 <= toInt32(0), -1152921504606846976.000000000 > toInt32(0), -1152921504606846976.000000000 >= toInt32(0) , toUInt64(0) = -1152921504606846976.000000000, toUInt64(0) != -1152921504606846976.000000000, toUInt64(0) < -1152921504606846976.000000000, toUInt64(0) <= -1152921504606846976.000000000, toUInt64(0) > -1152921504606846976.000000000, toUInt64(0) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt64(0), -1152921504606846976.000000000 != toUInt64(0), -1152921504606846976.000000000 < toUInt64(0), -1152921504606846976.000000000 <= toUInt64(0), -1152921504606846976.000000000 > toUInt64(0), -1152921504606846976.000000000 >= toUInt64(0) , toInt64(0) = -1152921504606846976.000000000, toInt64(0) != -1152921504606846976.000000000, toInt64(0) < -1152921504606846976.000000000, toInt64(0) <= -1152921504606846976.000000000, toInt64(0) > -1152921504606846976.000000000, toInt64(0) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt64(0), -1152921504606846976.000000000 != toInt64(0), -1152921504606846976.000000000 < toInt64(0), -1152921504606846976.000000000 <= toInt64(0), -1152921504606846976.000000000 > toInt64(0), -1152921504606846976.000000000 >= toInt64(0) ;
SELECT '0', '-9223372036854786048.000000000', 0 = -9223372036854786048.000000000, 0 != -9223372036854786048.000000000, 0 < -9223372036854786048.000000000, 0 <= -9223372036854786048.000000000, 0 > -9223372036854786048.000000000, 0 >= -9223372036854786048.000000000, -9223372036854786048.000000000 = 0, -9223372036854786048.000000000 != 0, -9223372036854786048.000000000 < 0, -9223372036854786048.000000000 <= 0, -9223372036854786048.000000000 > 0, -9223372036854786048.000000000 >= 0 , toUInt8(0) = -9223372036854786048.000000000, toUInt8(0) != -9223372036854786048.000000000, toUInt8(0) < -9223372036854786048.000000000, toUInt8(0) <= -9223372036854786048.000000000, toUInt8(0) > -9223372036854786048.000000000, toUInt8(0) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt8(0), -9223372036854786048.000000000 != toUInt8(0), -9223372036854786048.000000000 < toUInt8(0), -9223372036854786048.000000000 <= toUInt8(0), -9223372036854786048.000000000 > toUInt8(0), -9223372036854786048.000000000 >= toUInt8(0) , toInt8(0) = -9223372036854786048.000000000, toInt8(0) != -9223372036854786048.000000000, toInt8(0) < -9223372036854786048.000000000, toInt8(0) <= -9223372036854786048.000000000, toInt8(0) > -9223372036854786048.000000000, toInt8(0) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt8(0), -9223372036854786048.000000000 != toInt8(0), -9223372036854786048.000000000 < toInt8(0), -9223372036854786048.000000000 <= toInt8(0), -9223372036854786048.000000000 > toInt8(0), -9223372036854786048.000000000 >= toInt8(0) , toUInt16(0) = -9223372036854786048.000000000, toUInt16(0) != -9223372036854786048.000000000, toUInt16(0) < -9223372036854786048.000000000, toUInt16(0) <= -9223372036854786048.000000000, toUInt16(0) > -9223372036854786048.000000000, toUInt16(0) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt16(0), -9223372036854786048.000000000 != toUInt16(0), -9223372036854786048.000000000 < toUInt16(0), -9223372036854786048.000000000 <= toUInt16(0), -9223372036854786048.000000000 > toUInt16(0), -9223372036854786048.000000000 >= toUInt16(0) , toInt16(0) = -9223372036854786048.000000000, toInt16(0) != -9223372036854786048.000000000, toInt16(0) < -9223372036854786048.000000000, toInt16(0) <= -9223372036854786048.000000000, toInt16(0) > -9223372036854786048.000000000, toInt16(0) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt16(0), -9223372036854786048.000000000 != toInt16(0), -9223372036854786048.000000000 < toInt16(0), -9223372036854786048.000000000 <= toInt16(0), -9223372036854786048.000000000 > toInt16(0), -9223372036854786048.000000000 >= toInt16(0) , toUInt32(0) = -9223372036854786048.000000000, toUInt32(0) != -9223372036854786048.000000000, toUInt32(0) < -9223372036854786048.000000000, toUInt32(0) <= -9223372036854786048.000000000, toUInt32(0) > -9223372036854786048.000000000, toUInt32(0) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt32(0), -9223372036854786048.000000000 != toUInt32(0), -9223372036854786048.000000000 < toUInt32(0), -9223372036854786048.000000000 <= toUInt32(0), -9223372036854786048.000000000 > toUInt32(0), -9223372036854786048.000000000 >= toUInt32(0) , toInt32(0) = -9223372036854786048.000000000, toInt32(0) != -9223372036854786048.000000000, toInt32(0) < -9223372036854786048.000000000, toInt32(0) <= -9223372036854786048.000000000, toInt32(0) > -9223372036854786048.000000000, toInt32(0) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt32(0), -9223372036854786048.000000000 != toInt32(0), -9223372036854786048.000000000 < toInt32(0), -9223372036854786048.000000000 <= toInt32(0), -9223372036854786048.000000000 > toInt32(0), -9223372036854786048.000000000 >= toInt32(0) , toUInt64(0) = -9223372036854786048.000000000, toUInt64(0) != -9223372036854786048.000000000, toUInt64(0) < -9223372036854786048.000000000, toUInt64(0) <= -9223372036854786048.000000000, toUInt64(0) > -9223372036854786048.000000000, toUInt64(0) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt64(0), -9223372036854786048.000000000 != toUInt64(0), -9223372036854786048.000000000 < toUInt64(0), -9223372036854786048.000000000 <= toUInt64(0), -9223372036854786048.000000000 > toUInt64(0), -9223372036854786048.000000000 >= toUInt64(0) , toInt64(0) = -9223372036854786048.000000000, toInt64(0) != -9223372036854786048.000000000, toInt64(0) < -9223372036854786048.000000000, toInt64(0) <= -9223372036854786048.000000000, toInt64(0) > -9223372036854786048.000000000, toInt64(0) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt64(0), -9223372036854786048.000000000 != toInt64(0), -9223372036854786048.000000000 < toInt64(0), -9223372036854786048.000000000 <= toInt64(0), -9223372036854786048.000000000 > toInt64(0), -9223372036854786048.000000000 >= toInt64(0) ;
SELECT '0', '9223372036854786048.000000000', 0 = 9223372036854786048.000000000, 0 != 9223372036854786048.000000000, 0 < 9223372036854786048.000000000, 0 <= 9223372036854786048.000000000, 0 > 9223372036854786048.000000000, 0 >= 9223372036854786048.000000000, 9223372036854786048.000000000 = 0, 9223372036854786048.000000000 != 0, 9223372036854786048.000000000 < 0, 9223372036854786048.000000000 <= 0, 9223372036854786048.000000000 > 0, 9223372036854786048.000000000 >= 0 , toUInt8(0) = 9223372036854786048.000000000, toUInt8(0) != 9223372036854786048.000000000, toUInt8(0) < 9223372036854786048.000000000, toUInt8(0) <= 9223372036854786048.000000000, toUInt8(0) > 9223372036854786048.000000000, toUInt8(0) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt8(0), 9223372036854786048.000000000 != toUInt8(0), 9223372036854786048.000000000 < toUInt8(0), 9223372036854786048.000000000 <= toUInt8(0), 9223372036854786048.000000000 > toUInt8(0), 9223372036854786048.000000000 >= toUInt8(0) , toInt8(0) = 9223372036854786048.000000000, toInt8(0) != 9223372036854786048.000000000, toInt8(0) < 9223372036854786048.000000000, toInt8(0) <= 9223372036854786048.000000000, toInt8(0) > 9223372036854786048.000000000, toInt8(0) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt8(0), 9223372036854786048.000000000 != toInt8(0), 9223372036854786048.000000000 < toInt8(0), 9223372036854786048.000000000 <= toInt8(0), 9223372036854786048.000000000 > toInt8(0), 9223372036854786048.000000000 >= toInt8(0) , toUInt16(0) = 9223372036854786048.000000000, toUInt16(0) != 9223372036854786048.000000000, toUInt16(0) < 9223372036854786048.000000000, toUInt16(0) <= 9223372036854786048.000000000, toUInt16(0) > 9223372036854786048.000000000, toUInt16(0) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt16(0), 9223372036854786048.000000000 != toUInt16(0), 9223372036854786048.000000000 < toUInt16(0), 9223372036854786048.000000000 <= toUInt16(0), 9223372036854786048.000000000 > toUInt16(0), 9223372036854786048.000000000 >= toUInt16(0) , toInt16(0) = 9223372036854786048.000000000, toInt16(0) != 9223372036854786048.000000000, toInt16(0) < 9223372036854786048.000000000, toInt16(0) <= 9223372036854786048.000000000, toInt16(0) > 9223372036854786048.000000000, toInt16(0) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt16(0), 9223372036854786048.000000000 != toInt16(0), 9223372036854786048.000000000 < toInt16(0), 9223372036854786048.000000000 <= toInt16(0), 9223372036854786048.000000000 > toInt16(0), 9223372036854786048.000000000 >= toInt16(0) , toUInt32(0) = 9223372036854786048.000000000, toUInt32(0) != 9223372036854786048.000000000, toUInt32(0) < 9223372036854786048.000000000, toUInt32(0) <= 9223372036854786048.000000000, toUInt32(0) > 9223372036854786048.000000000, toUInt32(0) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt32(0), 9223372036854786048.000000000 != toUInt32(0), 9223372036854786048.000000000 < toUInt32(0), 9223372036854786048.000000000 <= toUInt32(0), 9223372036854786048.000000000 > toUInt32(0), 9223372036854786048.000000000 >= toUInt32(0) , toInt32(0) = 9223372036854786048.000000000, toInt32(0) != 9223372036854786048.000000000, toInt32(0) < 9223372036854786048.000000000, toInt32(0) <= 9223372036854786048.000000000, toInt32(0) > 9223372036854786048.000000000, toInt32(0) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt32(0), 9223372036854786048.000000000 != toInt32(0), 9223372036854786048.000000000 < toInt32(0), 9223372036854786048.000000000 <= toInt32(0), 9223372036854786048.000000000 > toInt32(0), 9223372036854786048.000000000 >= toInt32(0) , toUInt64(0) = 9223372036854786048.000000000, toUInt64(0) != 9223372036854786048.000000000, toUInt64(0) < 9223372036854786048.000000000, toUInt64(0) <= 9223372036854786048.000000000, toUInt64(0) > 9223372036854786048.000000000, toUInt64(0) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt64(0), 9223372036854786048.000000000 != toUInt64(0), 9223372036854786048.000000000 < toUInt64(0), 9223372036854786048.000000000 <= toUInt64(0), 9223372036854786048.000000000 > toUInt64(0), 9223372036854786048.000000000 >= toUInt64(0) , toInt64(0) = 9223372036854786048.000000000, toInt64(0) != 9223372036854786048.000000000, toInt64(0) < 9223372036854786048.000000000, toInt64(0) <= 9223372036854786048.000000000, toInt64(0) > 9223372036854786048.000000000, toInt64(0) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt64(0), 9223372036854786048.000000000 != toInt64(0), 9223372036854786048.000000000 < toInt64(0), 9223372036854786048.000000000 <= toInt64(0), 9223372036854786048.000000000 > toInt64(0), 9223372036854786048.000000000 >= toInt64(0) ;
SELECT '-1', '0.000000000', -1 = 0.000000000, -1 != 0.000000000, -1 < 0.000000000, -1 <= 0.000000000, -1 > 0.000000000, -1 >= 0.000000000, 0.000000000 = -1, 0.000000000 != -1, 0.000000000 < -1, 0.000000000 <= -1, 0.000000000 > -1, 0.000000000 >= -1 , toInt8(-1) = 0.000000000, toInt8(-1) != 0.000000000, toInt8(-1) < 0.000000000, toInt8(-1) <= 0.000000000, toInt8(-1) > 0.000000000, toInt8(-1) >= 0.000000000, 0.000000000 = toInt8(-1), 0.000000000 != toInt8(-1), 0.000000000 < toInt8(-1), 0.000000000 <= toInt8(-1), 0.000000000 > toInt8(-1), 0.000000000 >= toInt8(-1) , toInt16(-1) = 0.000000000, toInt16(-1) != 0.000000000, toInt16(-1) < 0.000000000, toInt16(-1) <= 0.000000000, toInt16(-1) > 0.000000000, toInt16(-1) >= 0.000000000, 0.000000000 = toInt16(-1), 0.000000000 != toInt16(-1), 0.000000000 < toInt16(-1), 0.000000000 <= toInt16(-1), 0.000000000 > toInt16(-1), 0.000000000 >= toInt16(-1) , toInt32(-1) = 0.000000000, toInt32(-1) != 0.000000000, toInt32(-1) < 0.000000000, toInt32(-1) <= 0.000000000, toInt32(-1) > 0.000000000, toInt32(-1) >= 0.000000000, 0.000000000 = toInt32(-1), 0.000000000 != toInt32(-1), 0.000000000 < toInt32(-1), 0.000000000 <= toInt32(-1), 0.000000000 > toInt32(-1), 0.000000000 >= toInt32(-1) , toInt64(-1) = 0.000000000, toInt64(-1) != 0.000000000, toInt64(-1) < 0.000000000, toInt64(-1) <= 0.000000000, toInt64(-1) > 0.000000000, toInt64(-1) >= 0.000000000, 0.000000000 = toInt64(-1), 0.000000000 != toInt64(-1), 0.000000000 < toInt64(-1), 0.000000000 <= toInt64(-1), 0.000000000 > toInt64(-1), 0.000000000 >= toInt64(-1) ;
SELECT '-1', '-1.000000000', -1 = -1.000000000, -1 != -1.000000000, -1 < -1.000000000, -1 <= -1.000000000, -1 > -1.000000000, -1 >= -1.000000000, -1.000000000 = -1, -1.000000000 != -1, -1.000000000 < -1, -1.000000000 <= -1, -1.000000000 > -1, -1.000000000 >= -1 , toInt8(-1) = -1.000000000, toInt8(-1) != -1.000000000, toInt8(-1) < -1.000000000, toInt8(-1) <= -1.000000000, toInt8(-1) > -1.000000000, toInt8(-1) >= -1.000000000, -1.000000000 = toInt8(-1), -1.000000000 != toInt8(-1), -1.000000000 < toInt8(-1), -1.000000000 <= toInt8(-1), -1.000000000 > toInt8(-1), -1.000000000 >= toInt8(-1) , toInt16(-1) = -1.000000000, toInt16(-1) != -1.000000000, toInt16(-1) < -1.000000000, toInt16(-1) <= -1.000000000, toInt16(-1) > -1.000000000, toInt16(-1) >= -1.000000000, -1.000000000 = toInt16(-1), -1.000000000 != toInt16(-1), -1.000000000 < toInt16(-1), -1.000000000 <= toInt16(-1), -1.000000000 > toInt16(-1), -1.000000000 >= toInt16(-1) , toInt32(-1) = -1.000000000, toInt32(-1) != -1.000000000, toInt32(-1) < -1.000000000, toInt32(-1) <= -1.000000000, toInt32(-1) > -1.000000000, toInt32(-1) >= -1.000000000, -1.000000000 = toInt32(-1), -1.000000000 != toInt32(-1), -1.000000000 < toInt32(-1), -1.000000000 <= toInt32(-1), -1.000000000 > toInt32(-1), -1.000000000 >= toInt32(-1) , toInt64(-1) = -1.000000000, toInt64(-1) != -1.000000000, toInt64(-1) < -1.000000000, toInt64(-1) <= -1.000000000, toInt64(-1) > -1.000000000, toInt64(-1) >= -1.000000000, -1.000000000 = toInt64(-1), -1.000000000 != toInt64(-1), -1.000000000 < toInt64(-1), -1.000000000 <= toInt64(-1), -1.000000000 > toInt64(-1), -1.000000000 >= toInt64(-1) ;
SELECT '-1', '1.000000000', -1 = 1.000000000, -1 != 1.000000000, -1 < 1.000000000, -1 <= 1.000000000, -1 > 1.000000000, -1 >= 1.000000000, 1.000000000 = -1, 1.000000000 != -1, 1.000000000 < -1, 1.000000000 <= -1, 1.000000000 > -1, 1.000000000 >= -1 , toInt8(-1) = 1.000000000, toInt8(-1) != 1.000000000, toInt8(-1) < 1.000000000, toInt8(-1) <= 1.000000000, toInt8(-1) > 1.000000000, toInt8(-1) >= 1.000000000, 1.000000000 = toInt8(-1), 1.000000000 != toInt8(-1), 1.000000000 < toInt8(-1), 1.000000000 <= toInt8(-1), 1.000000000 > toInt8(-1), 1.000000000 >= toInt8(-1) , toInt16(-1) = 1.000000000, toInt16(-1) != 1.000000000, toInt16(-1) < 1.000000000, toInt16(-1) <= 1.000000000, toInt16(-1) > 1.000000000, toInt16(-1) >= 1.000000000, 1.000000000 = toInt16(-1), 1.000000000 != toInt16(-1), 1.000000000 < toInt16(-1), 1.000000000 <= toInt16(-1), 1.000000000 > toInt16(-1), 1.000000000 >= toInt16(-1) , toInt32(-1) = 1.000000000, toInt32(-1) != 1.000000000, toInt32(-1) < 1.000000000, toInt32(-1) <= 1.000000000, toInt32(-1) > 1.000000000, toInt32(-1) >= 1.000000000, 1.000000000 = toInt32(-1), 1.000000000 != toInt32(-1), 1.000000000 < toInt32(-1), 1.000000000 <= toInt32(-1), 1.000000000 > toInt32(-1), 1.000000000 >= toInt32(-1) , toInt64(-1) = 1.000000000, toInt64(-1) != 1.000000000, toInt64(-1) < 1.000000000, toInt64(-1) <= 1.000000000, toInt64(-1) > 1.000000000, toInt64(-1) >= 1.000000000, 1.000000000 = toInt64(-1), 1.000000000 != toInt64(-1), 1.000000000 < toInt64(-1), 1.000000000 <= toInt64(-1), 1.000000000 > toInt64(-1), 1.000000000 >= toInt64(-1) ;
SELECT '-1', '18446744073709551616.000000000', -1 = 18446744073709551616.000000000, -1 != 18446744073709551616.000000000, -1 < 18446744073709551616.000000000, -1 <= 18446744073709551616.000000000, -1 > 18446744073709551616.000000000, -1 >= 18446744073709551616.000000000, 18446744073709551616.000000000 = -1, 18446744073709551616.000000000 != -1, 18446744073709551616.000000000 < -1, 18446744073709551616.000000000 <= -1, 18446744073709551616.000000000 > -1, 18446744073709551616.000000000 >= -1 , toInt8(-1) = 18446744073709551616.000000000, toInt8(-1) != 18446744073709551616.000000000, toInt8(-1) < 18446744073709551616.000000000, toInt8(-1) <= 18446744073709551616.000000000, toInt8(-1) > 18446744073709551616.000000000, toInt8(-1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt8(-1), 18446744073709551616.000000000 != toInt8(-1), 18446744073709551616.000000000 < toInt8(-1), 18446744073709551616.000000000 <= toInt8(-1), 18446744073709551616.000000000 > toInt8(-1), 18446744073709551616.000000000 >= toInt8(-1) , toInt16(-1) = 18446744073709551616.000000000, toInt16(-1) != 18446744073709551616.000000000, toInt16(-1) < 18446744073709551616.000000000, toInt16(-1) <= 18446744073709551616.000000000, toInt16(-1) > 18446744073709551616.000000000, toInt16(-1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt16(-1), 18446744073709551616.000000000 != toInt16(-1), 18446744073709551616.000000000 < toInt16(-1), 18446744073709551616.000000000 <= toInt16(-1), 18446744073709551616.000000000 > toInt16(-1), 18446744073709551616.000000000 >= toInt16(-1) , toInt32(-1) = 18446744073709551616.000000000, toInt32(-1) != 18446744073709551616.000000000, toInt32(-1) < 18446744073709551616.000000000, toInt32(-1) <= 18446744073709551616.000000000, toInt32(-1) > 18446744073709551616.000000000, toInt32(-1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt32(-1), 18446744073709551616.000000000 != toInt32(-1), 18446744073709551616.000000000 < toInt32(-1), 18446744073709551616.000000000 <= toInt32(-1), 18446744073709551616.000000000 > toInt32(-1), 18446744073709551616.000000000 >= toInt32(-1) , toInt64(-1) = 18446744073709551616.000000000, toInt64(-1) != 18446744073709551616.000000000, toInt64(-1) < 18446744073709551616.000000000, toInt64(-1) <= 18446744073709551616.000000000, toInt64(-1) > 18446744073709551616.000000000, toInt64(-1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt64(-1), 18446744073709551616.000000000 != toInt64(-1), 18446744073709551616.000000000 < toInt64(-1), 18446744073709551616.000000000 <= toInt64(-1), 18446744073709551616.000000000 > toInt64(-1), 18446744073709551616.000000000 >= toInt64(-1) ;
SELECT '-1', '9223372036854775808.000000000', -1 = 9223372036854775808.000000000, -1 != 9223372036854775808.000000000, -1 < 9223372036854775808.000000000, -1 <= 9223372036854775808.000000000, -1 > 9223372036854775808.000000000, -1 >= 9223372036854775808.000000000, 9223372036854775808.000000000 = -1, 9223372036854775808.000000000 != -1, 9223372036854775808.000000000 < -1, 9223372036854775808.000000000 <= -1, 9223372036854775808.000000000 > -1, 9223372036854775808.000000000 >= -1 , toInt8(-1) = 9223372036854775808.000000000, toInt8(-1) != 9223372036854775808.000000000, toInt8(-1) < 9223372036854775808.000000000, toInt8(-1) <= 9223372036854775808.000000000, toInt8(-1) > 9223372036854775808.000000000, toInt8(-1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt8(-1), 9223372036854775808.000000000 != toInt8(-1), 9223372036854775808.000000000 < toInt8(-1), 9223372036854775808.000000000 <= toInt8(-1), 9223372036854775808.000000000 > toInt8(-1), 9223372036854775808.000000000 >= toInt8(-1) , toInt16(-1) = 9223372036854775808.000000000, toInt16(-1) != 9223372036854775808.000000000, toInt16(-1) < 9223372036854775808.000000000, toInt16(-1) <= 9223372036854775808.000000000, toInt16(-1) > 9223372036854775808.000000000, toInt16(-1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt16(-1), 9223372036854775808.000000000 != toInt16(-1), 9223372036854775808.000000000 < toInt16(-1), 9223372036854775808.000000000 <= toInt16(-1), 9223372036854775808.000000000 > toInt16(-1), 9223372036854775808.000000000 >= toInt16(-1) , toInt32(-1) = 9223372036854775808.000000000, toInt32(-1) != 9223372036854775808.000000000, toInt32(-1) < 9223372036854775808.000000000, toInt32(-1) <= 9223372036854775808.000000000, toInt32(-1) > 9223372036854775808.000000000, toInt32(-1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt32(-1), 9223372036854775808.000000000 != toInt32(-1), 9223372036854775808.000000000 < toInt32(-1), 9223372036854775808.000000000 <= toInt32(-1), 9223372036854775808.000000000 > toInt32(-1), 9223372036854775808.000000000 >= toInt32(-1) , toInt64(-1) = 9223372036854775808.000000000, toInt64(-1) != 9223372036854775808.000000000, toInt64(-1) < 9223372036854775808.000000000, toInt64(-1) <= 9223372036854775808.000000000, toInt64(-1) > 9223372036854775808.000000000, toInt64(-1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt64(-1), 9223372036854775808.000000000 != toInt64(-1), 9223372036854775808.000000000 < toInt64(-1), 9223372036854775808.000000000 <= toInt64(-1), 9223372036854775808.000000000 > toInt64(-1), 9223372036854775808.000000000 >= toInt64(-1) ;
SELECT '-1', '-9223372036854775808.000000000', -1 = -9223372036854775808.000000000, -1 != -9223372036854775808.000000000, -1 < -9223372036854775808.000000000, -1 <= -9223372036854775808.000000000, -1 > -9223372036854775808.000000000, -1 >= -9223372036854775808.000000000, -9223372036854775808.000000000 = -1, -9223372036854775808.000000000 != -1, -9223372036854775808.000000000 < -1, -9223372036854775808.000000000 <= -1, -9223372036854775808.000000000 > -1, -9223372036854775808.000000000 >= -1 , toInt8(-1) = -9223372036854775808.000000000, toInt8(-1) != -9223372036854775808.000000000, toInt8(-1) < -9223372036854775808.000000000, toInt8(-1) <= -9223372036854775808.000000000, toInt8(-1) > -9223372036854775808.000000000, toInt8(-1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt8(-1), -9223372036854775808.000000000 != toInt8(-1), -9223372036854775808.000000000 < toInt8(-1), -9223372036854775808.000000000 <= toInt8(-1), -9223372036854775808.000000000 > toInt8(-1), -9223372036854775808.000000000 >= toInt8(-1) , toInt16(-1) = -9223372036854775808.000000000, toInt16(-1) != -9223372036854775808.000000000, toInt16(-1) < -9223372036854775808.000000000, toInt16(-1) <= -9223372036854775808.000000000, toInt16(-1) > -9223372036854775808.000000000, toInt16(-1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt16(-1), -9223372036854775808.000000000 != toInt16(-1), -9223372036854775808.000000000 < toInt16(-1), -9223372036854775808.000000000 <= toInt16(-1), -9223372036854775808.000000000 > toInt16(-1), -9223372036854775808.000000000 >= toInt16(-1) , toInt32(-1) = -9223372036854775808.000000000, toInt32(-1) != -9223372036854775808.000000000, toInt32(-1) < -9223372036854775808.000000000, toInt32(-1) <= -9223372036854775808.000000000, toInt32(-1) > -9223372036854775808.000000000, toInt32(-1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt32(-1), -9223372036854775808.000000000 != toInt32(-1), -9223372036854775808.000000000 < toInt32(-1), -9223372036854775808.000000000 <= toInt32(-1), -9223372036854775808.000000000 > toInt32(-1), -9223372036854775808.000000000 >= toInt32(-1) , toInt64(-1) = -9223372036854775808.000000000, toInt64(-1) != -9223372036854775808.000000000, toInt64(-1) < -9223372036854775808.000000000, toInt64(-1) <= -9223372036854775808.000000000, toInt64(-1) > -9223372036854775808.000000000, toInt64(-1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt64(-1), -9223372036854775808.000000000 != toInt64(-1), -9223372036854775808.000000000 < toInt64(-1), -9223372036854775808.000000000 <= toInt64(-1), -9223372036854775808.000000000 > toInt64(-1), -9223372036854775808.000000000 >= toInt64(-1) ;
SELECT '-1', '9223372036854775808.000000000', -1 = 9223372036854775808.000000000, -1 != 9223372036854775808.000000000, -1 < 9223372036854775808.000000000, -1 <= 9223372036854775808.000000000, -1 > 9223372036854775808.000000000, -1 >= 9223372036854775808.000000000, 9223372036854775808.000000000 = -1, 9223372036854775808.000000000 != -1, 9223372036854775808.000000000 < -1, 9223372036854775808.000000000 <= -1, 9223372036854775808.000000000 > -1, 9223372036854775808.000000000 >= -1 , toInt8(-1) = 9223372036854775808.000000000, toInt8(-1) != 9223372036854775808.000000000, toInt8(-1) < 9223372036854775808.000000000, toInt8(-1) <= 9223372036854775808.000000000, toInt8(-1) > 9223372036854775808.000000000, toInt8(-1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt8(-1), 9223372036854775808.000000000 != toInt8(-1), 9223372036854775808.000000000 < toInt8(-1), 9223372036854775808.000000000 <= toInt8(-1), 9223372036854775808.000000000 > toInt8(-1), 9223372036854775808.000000000 >= toInt8(-1) , toInt16(-1) = 9223372036854775808.000000000, toInt16(-1) != 9223372036854775808.000000000, toInt16(-1) < 9223372036854775808.000000000, toInt16(-1) <= 9223372036854775808.000000000, toInt16(-1) > 9223372036854775808.000000000, toInt16(-1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt16(-1), 9223372036854775808.000000000 != toInt16(-1), 9223372036854775808.000000000 < toInt16(-1), 9223372036854775808.000000000 <= toInt16(-1), 9223372036854775808.000000000 > toInt16(-1), 9223372036854775808.000000000 >= toInt16(-1) , toInt32(-1) = 9223372036854775808.000000000, toInt32(-1) != 9223372036854775808.000000000, toInt32(-1) < 9223372036854775808.000000000, toInt32(-1) <= 9223372036854775808.000000000, toInt32(-1) > 9223372036854775808.000000000, toInt32(-1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt32(-1), 9223372036854775808.000000000 != toInt32(-1), 9223372036854775808.000000000 < toInt32(-1), 9223372036854775808.000000000 <= toInt32(-1), 9223372036854775808.000000000 > toInt32(-1), 9223372036854775808.000000000 >= toInt32(-1) , toInt64(-1) = 9223372036854775808.000000000, toInt64(-1) != 9223372036854775808.000000000, toInt64(-1) < 9223372036854775808.000000000, toInt64(-1) <= 9223372036854775808.000000000, toInt64(-1) > 9223372036854775808.000000000, toInt64(-1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt64(-1), 9223372036854775808.000000000 != toInt64(-1), 9223372036854775808.000000000 < toInt64(-1), 9223372036854775808.000000000 <= toInt64(-1), 9223372036854775808.000000000 > toInt64(-1), 9223372036854775808.000000000 >= toInt64(-1) ;
SELECT '-1', '2251799813685248.000000000', -1 = 2251799813685248.000000000, -1 != 2251799813685248.000000000, -1 < 2251799813685248.000000000, -1 <= 2251799813685248.000000000, -1 > 2251799813685248.000000000, -1 >= 2251799813685248.000000000, 2251799813685248.000000000 = -1, 2251799813685248.000000000 != -1, 2251799813685248.000000000 < -1, 2251799813685248.000000000 <= -1, 2251799813685248.000000000 > -1, 2251799813685248.000000000 >= -1 , toInt8(-1) = 2251799813685248.000000000, toInt8(-1) != 2251799813685248.000000000, toInt8(-1) < 2251799813685248.000000000, toInt8(-1) <= 2251799813685248.000000000, toInt8(-1) > 2251799813685248.000000000, toInt8(-1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt8(-1), 2251799813685248.000000000 != toInt8(-1), 2251799813685248.000000000 < toInt8(-1), 2251799813685248.000000000 <= toInt8(-1), 2251799813685248.000000000 > toInt8(-1), 2251799813685248.000000000 >= toInt8(-1) , toInt16(-1) = 2251799813685248.000000000, toInt16(-1) != 2251799813685248.000000000, toInt16(-1) < 2251799813685248.000000000, toInt16(-1) <= 2251799813685248.000000000, toInt16(-1) > 2251799813685248.000000000, toInt16(-1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt16(-1), 2251799813685248.000000000 != toInt16(-1), 2251799813685248.000000000 < toInt16(-1), 2251799813685248.000000000 <= toInt16(-1), 2251799813685248.000000000 > toInt16(-1), 2251799813685248.000000000 >= toInt16(-1) , toInt32(-1) = 2251799813685248.000000000, toInt32(-1) != 2251799813685248.000000000, toInt32(-1) < 2251799813685248.000000000, toInt32(-1) <= 2251799813685248.000000000, toInt32(-1) > 2251799813685248.000000000, toInt32(-1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt32(-1), 2251799813685248.000000000 != toInt32(-1), 2251799813685248.000000000 < toInt32(-1), 2251799813685248.000000000 <= toInt32(-1), 2251799813685248.000000000 > toInt32(-1), 2251799813685248.000000000 >= toInt32(-1) , toInt64(-1) = 2251799813685248.000000000, toInt64(-1) != 2251799813685248.000000000, toInt64(-1) < 2251799813685248.000000000, toInt64(-1) <= 2251799813685248.000000000, toInt64(-1) > 2251799813685248.000000000, toInt64(-1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt64(-1), 2251799813685248.000000000 != toInt64(-1), 2251799813685248.000000000 < toInt64(-1), 2251799813685248.000000000 <= toInt64(-1), 2251799813685248.000000000 > toInt64(-1), 2251799813685248.000000000 >= toInt64(-1) ;
SELECT '-1', '4503599627370496.000000000', -1 = 4503599627370496.000000000, -1 != 4503599627370496.000000000, -1 < 4503599627370496.000000000, -1 <= 4503599627370496.000000000, -1 > 4503599627370496.000000000, -1 >= 4503599627370496.000000000, 4503599627370496.000000000 = -1, 4503599627370496.000000000 != -1, 4503599627370496.000000000 < -1, 4503599627370496.000000000 <= -1, 4503599627370496.000000000 > -1, 4503599627370496.000000000 >= -1 , toInt8(-1) = 4503599627370496.000000000, toInt8(-1) != 4503599627370496.000000000, toInt8(-1) < 4503599627370496.000000000, toInt8(-1) <= 4503599627370496.000000000, toInt8(-1) > 4503599627370496.000000000, toInt8(-1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt8(-1), 4503599627370496.000000000 != toInt8(-1), 4503599627370496.000000000 < toInt8(-1), 4503599627370496.000000000 <= toInt8(-1), 4503599627370496.000000000 > toInt8(-1), 4503599627370496.000000000 >= toInt8(-1) , toInt16(-1) = 4503599627370496.000000000, toInt16(-1) != 4503599627370496.000000000, toInt16(-1) < 4503599627370496.000000000, toInt16(-1) <= 4503599627370496.000000000, toInt16(-1) > 4503599627370496.000000000, toInt16(-1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt16(-1), 4503599627370496.000000000 != toInt16(-1), 4503599627370496.000000000 < toInt16(-1), 4503599627370496.000000000 <= toInt16(-1), 4503599627370496.000000000 > toInt16(-1), 4503599627370496.000000000 >= toInt16(-1) , toInt32(-1) = 4503599627370496.000000000, toInt32(-1) != 4503599627370496.000000000, toInt32(-1) < 4503599627370496.000000000, toInt32(-1) <= 4503599627370496.000000000, toInt32(-1) > 4503599627370496.000000000, toInt32(-1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt32(-1), 4503599627370496.000000000 != toInt32(-1), 4503599627370496.000000000 < toInt32(-1), 4503599627370496.000000000 <= toInt32(-1), 4503599627370496.000000000 > toInt32(-1), 4503599627370496.000000000 >= toInt32(-1) , toInt64(-1) = 4503599627370496.000000000, toInt64(-1) != 4503599627370496.000000000, toInt64(-1) < 4503599627370496.000000000, toInt64(-1) <= 4503599627370496.000000000, toInt64(-1) > 4503599627370496.000000000, toInt64(-1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt64(-1), 4503599627370496.000000000 != toInt64(-1), 4503599627370496.000000000 < toInt64(-1), 4503599627370496.000000000 <= toInt64(-1), 4503599627370496.000000000 > toInt64(-1), 4503599627370496.000000000 >= toInt64(-1) ;
SELECT '-1', '9007199254740991.000000000', -1 = 9007199254740991.000000000, -1 != 9007199254740991.000000000, -1 < 9007199254740991.000000000, -1 <= 9007199254740991.000000000, -1 > 9007199254740991.000000000, -1 >= 9007199254740991.000000000, 9007199254740991.000000000 = -1, 9007199254740991.000000000 != -1, 9007199254740991.000000000 < -1, 9007199254740991.000000000 <= -1, 9007199254740991.000000000 > -1, 9007199254740991.000000000 >= -1 , toInt8(-1) = 9007199254740991.000000000, toInt8(-1) != 9007199254740991.000000000, toInt8(-1) < 9007199254740991.000000000, toInt8(-1) <= 9007199254740991.000000000, toInt8(-1) > 9007199254740991.000000000, toInt8(-1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt8(-1), 9007199254740991.000000000 != toInt8(-1), 9007199254740991.000000000 < toInt8(-1), 9007199254740991.000000000 <= toInt8(-1), 9007199254740991.000000000 > toInt8(-1), 9007199254740991.000000000 >= toInt8(-1) , toInt16(-1) = 9007199254740991.000000000, toInt16(-1) != 9007199254740991.000000000, toInt16(-1) < 9007199254740991.000000000, toInt16(-1) <= 9007199254740991.000000000, toInt16(-1) > 9007199254740991.000000000, toInt16(-1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt16(-1), 9007199254740991.000000000 != toInt16(-1), 9007199254740991.000000000 < toInt16(-1), 9007199254740991.000000000 <= toInt16(-1), 9007199254740991.000000000 > toInt16(-1), 9007199254740991.000000000 >= toInt16(-1) , toInt32(-1) = 9007199254740991.000000000, toInt32(-1) != 9007199254740991.000000000, toInt32(-1) < 9007199254740991.000000000, toInt32(-1) <= 9007199254740991.000000000, toInt32(-1) > 9007199254740991.000000000, toInt32(-1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt32(-1), 9007199254740991.000000000 != toInt32(-1), 9007199254740991.000000000 < toInt32(-1), 9007199254740991.000000000 <= toInt32(-1), 9007199254740991.000000000 > toInt32(-1), 9007199254740991.000000000 >= toInt32(-1) , toInt64(-1) = 9007199254740991.000000000, toInt64(-1) != 9007199254740991.000000000, toInt64(-1) < 9007199254740991.000000000, toInt64(-1) <= 9007199254740991.000000000, toInt64(-1) > 9007199254740991.000000000, toInt64(-1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt64(-1), 9007199254740991.000000000 != toInt64(-1), 9007199254740991.000000000 < toInt64(-1), 9007199254740991.000000000 <= toInt64(-1), 9007199254740991.000000000 > toInt64(-1), 9007199254740991.000000000 >= toInt64(-1) ;
SELECT '-1', '9007199254740992.000000000', -1 = 9007199254740992.000000000, -1 != 9007199254740992.000000000, -1 < 9007199254740992.000000000, -1 <= 9007199254740992.000000000, -1 > 9007199254740992.000000000, -1 >= 9007199254740992.000000000, 9007199254740992.000000000 = -1, 9007199254740992.000000000 != -1, 9007199254740992.000000000 < -1, 9007199254740992.000000000 <= -1, 9007199254740992.000000000 > -1, 9007199254740992.000000000 >= -1 , toInt8(-1) = 9007199254740992.000000000, toInt8(-1) != 9007199254740992.000000000, toInt8(-1) < 9007199254740992.000000000, toInt8(-1) <= 9007199254740992.000000000, toInt8(-1) > 9007199254740992.000000000, toInt8(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(-1), 9007199254740992.000000000 != toInt8(-1), 9007199254740992.000000000 < toInt8(-1), 9007199254740992.000000000 <= toInt8(-1), 9007199254740992.000000000 > toInt8(-1), 9007199254740992.000000000 >= toInt8(-1) , toInt16(-1) = 9007199254740992.000000000, toInt16(-1) != 9007199254740992.000000000, toInt16(-1) < 9007199254740992.000000000, toInt16(-1) <= 9007199254740992.000000000, toInt16(-1) > 9007199254740992.000000000, toInt16(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(-1), 9007199254740992.000000000 != toInt16(-1), 9007199254740992.000000000 < toInt16(-1), 9007199254740992.000000000 <= toInt16(-1), 9007199254740992.000000000 > toInt16(-1), 9007199254740992.000000000 >= toInt16(-1) , toInt32(-1) = 9007199254740992.000000000, toInt32(-1) != 9007199254740992.000000000, toInt32(-1) < 9007199254740992.000000000, toInt32(-1) <= 9007199254740992.000000000, toInt32(-1) > 9007199254740992.000000000, toInt32(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(-1), 9007199254740992.000000000 != toInt32(-1), 9007199254740992.000000000 < toInt32(-1), 9007199254740992.000000000 <= toInt32(-1), 9007199254740992.000000000 > toInt32(-1), 9007199254740992.000000000 >= toInt32(-1) , toInt64(-1) = 9007199254740992.000000000, toInt64(-1) != 9007199254740992.000000000, toInt64(-1) < 9007199254740992.000000000, toInt64(-1) <= 9007199254740992.000000000, toInt64(-1) > 9007199254740992.000000000, toInt64(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(-1), 9007199254740992.000000000 != toInt64(-1), 9007199254740992.000000000 < toInt64(-1), 9007199254740992.000000000 <= toInt64(-1), 9007199254740992.000000000 > toInt64(-1), 9007199254740992.000000000 >= toInt64(-1) ;
SELECT '-1', '9007199254740992.000000000', -1 = 9007199254740992.000000000, -1 != 9007199254740992.000000000, -1 < 9007199254740992.000000000, -1 <= 9007199254740992.000000000, -1 > 9007199254740992.000000000, -1 >= 9007199254740992.000000000, 9007199254740992.000000000 = -1, 9007199254740992.000000000 != -1, 9007199254740992.000000000 < -1, 9007199254740992.000000000 <= -1, 9007199254740992.000000000 > -1, 9007199254740992.000000000 >= -1 , toInt8(-1) = 9007199254740992.000000000, toInt8(-1) != 9007199254740992.000000000, toInt8(-1) < 9007199254740992.000000000, toInt8(-1) <= 9007199254740992.000000000, toInt8(-1) > 9007199254740992.000000000, toInt8(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(-1), 9007199254740992.000000000 != toInt8(-1), 9007199254740992.000000000 < toInt8(-1), 9007199254740992.000000000 <= toInt8(-1), 9007199254740992.000000000 > toInt8(-1), 9007199254740992.000000000 >= toInt8(-1) , toInt16(-1) = 9007199254740992.000000000, toInt16(-1) != 9007199254740992.000000000, toInt16(-1) < 9007199254740992.000000000, toInt16(-1) <= 9007199254740992.000000000, toInt16(-1) > 9007199254740992.000000000, toInt16(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(-1), 9007199254740992.000000000 != toInt16(-1), 9007199254740992.000000000 < toInt16(-1), 9007199254740992.000000000 <= toInt16(-1), 9007199254740992.000000000 > toInt16(-1), 9007199254740992.000000000 >= toInt16(-1) , toInt32(-1) = 9007199254740992.000000000, toInt32(-1) != 9007199254740992.000000000, toInt32(-1) < 9007199254740992.000000000, toInt32(-1) <= 9007199254740992.000000000, toInt32(-1) > 9007199254740992.000000000, toInt32(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(-1), 9007199254740992.000000000 != toInt32(-1), 9007199254740992.000000000 < toInt32(-1), 9007199254740992.000000000 <= toInt32(-1), 9007199254740992.000000000 > toInt32(-1), 9007199254740992.000000000 >= toInt32(-1) , toInt64(-1) = 9007199254740992.000000000, toInt64(-1) != 9007199254740992.000000000, toInt64(-1) < 9007199254740992.000000000, toInt64(-1) <= 9007199254740992.000000000, toInt64(-1) > 9007199254740992.000000000, toInt64(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(-1), 9007199254740992.000000000 != toInt64(-1), 9007199254740992.000000000 < toInt64(-1), 9007199254740992.000000000 <= toInt64(-1), 9007199254740992.000000000 > toInt64(-1), 9007199254740992.000000000 >= toInt64(-1) ;
SELECT '-1', '9007199254740994.000000000', -1 = 9007199254740994.000000000, -1 != 9007199254740994.000000000, -1 < 9007199254740994.000000000, -1 <= 9007199254740994.000000000, -1 > 9007199254740994.000000000, -1 >= 9007199254740994.000000000, 9007199254740994.000000000 = -1, 9007199254740994.000000000 != -1, 9007199254740994.000000000 < -1, 9007199254740994.000000000 <= -1, 9007199254740994.000000000 > -1, 9007199254740994.000000000 >= -1 , toInt8(-1) = 9007199254740994.000000000, toInt8(-1) != 9007199254740994.000000000, toInt8(-1) < 9007199254740994.000000000, toInt8(-1) <= 9007199254740994.000000000, toInt8(-1) > 9007199254740994.000000000, toInt8(-1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt8(-1), 9007199254740994.000000000 != toInt8(-1), 9007199254740994.000000000 < toInt8(-1), 9007199254740994.000000000 <= toInt8(-1), 9007199254740994.000000000 > toInt8(-1), 9007199254740994.000000000 >= toInt8(-1) , toInt16(-1) = 9007199254740994.000000000, toInt16(-1) != 9007199254740994.000000000, toInt16(-1) < 9007199254740994.000000000, toInt16(-1) <= 9007199254740994.000000000, toInt16(-1) > 9007199254740994.000000000, toInt16(-1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt16(-1), 9007199254740994.000000000 != toInt16(-1), 9007199254740994.000000000 < toInt16(-1), 9007199254740994.000000000 <= toInt16(-1), 9007199254740994.000000000 > toInt16(-1), 9007199254740994.000000000 >= toInt16(-1) , toInt32(-1) = 9007199254740994.000000000, toInt32(-1) != 9007199254740994.000000000, toInt32(-1) < 9007199254740994.000000000, toInt32(-1) <= 9007199254740994.000000000, toInt32(-1) > 9007199254740994.000000000, toInt32(-1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt32(-1), 9007199254740994.000000000 != toInt32(-1), 9007199254740994.000000000 < toInt32(-1), 9007199254740994.000000000 <= toInt32(-1), 9007199254740994.000000000 > toInt32(-1), 9007199254740994.000000000 >= toInt32(-1) , toInt64(-1) = 9007199254740994.000000000, toInt64(-1) != 9007199254740994.000000000, toInt64(-1) < 9007199254740994.000000000, toInt64(-1) <= 9007199254740994.000000000, toInt64(-1) > 9007199254740994.000000000, toInt64(-1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt64(-1), 9007199254740994.000000000 != toInt64(-1), 9007199254740994.000000000 < toInt64(-1), 9007199254740994.000000000 <= toInt64(-1), 9007199254740994.000000000 > toInt64(-1), 9007199254740994.000000000 >= toInt64(-1) ;
SELECT '-1', '-9007199254740991.000000000', -1 = -9007199254740991.000000000, -1 != -9007199254740991.000000000, -1 < -9007199254740991.000000000, -1 <= -9007199254740991.000000000, -1 > -9007199254740991.000000000, -1 >= -9007199254740991.000000000, -9007199254740991.000000000 = -1, -9007199254740991.000000000 != -1, -9007199254740991.000000000 < -1, -9007199254740991.000000000 <= -1, -9007199254740991.000000000 > -1, -9007199254740991.000000000 >= -1 , toInt8(-1) = -9007199254740991.000000000, toInt8(-1) != -9007199254740991.000000000, toInt8(-1) < -9007199254740991.000000000, toInt8(-1) <= -9007199254740991.000000000, toInt8(-1) > -9007199254740991.000000000, toInt8(-1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt8(-1), -9007199254740991.000000000 != toInt8(-1), -9007199254740991.000000000 < toInt8(-1), -9007199254740991.000000000 <= toInt8(-1), -9007199254740991.000000000 > toInt8(-1), -9007199254740991.000000000 >= toInt8(-1) , toInt16(-1) = -9007199254740991.000000000, toInt16(-1) != -9007199254740991.000000000, toInt16(-1) < -9007199254740991.000000000, toInt16(-1) <= -9007199254740991.000000000, toInt16(-1) > -9007199254740991.000000000, toInt16(-1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt16(-1), -9007199254740991.000000000 != toInt16(-1), -9007199254740991.000000000 < toInt16(-1), -9007199254740991.000000000 <= toInt16(-1), -9007199254740991.000000000 > toInt16(-1), -9007199254740991.000000000 >= toInt16(-1) , toInt32(-1) = -9007199254740991.000000000, toInt32(-1) != -9007199254740991.000000000, toInt32(-1) < -9007199254740991.000000000, toInt32(-1) <= -9007199254740991.000000000, toInt32(-1) > -9007199254740991.000000000, toInt32(-1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt32(-1), -9007199254740991.000000000 != toInt32(-1), -9007199254740991.000000000 < toInt32(-1), -9007199254740991.000000000 <= toInt32(-1), -9007199254740991.000000000 > toInt32(-1), -9007199254740991.000000000 >= toInt32(-1) , toInt64(-1) = -9007199254740991.000000000, toInt64(-1) != -9007199254740991.000000000, toInt64(-1) < -9007199254740991.000000000, toInt64(-1) <= -9007199254740991.000000000, toInt64(-1) > -9007199254740991.000000000, toInt64(-1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt64(-1), -9007199254740991.000000000 != toInt64(-1), -9007199254740991.000000000 < toInt64(-1), -9007199254740991.000000000 <= toInt64(-1), -9007199254740991.000000000 > toInt64(-1), -9007199254740991.000000000 >= toInt64(-1) ;
SELECT '-1', '-9007199254740992.000000000', -1 = -9007199254740992.000000000, -1 != -9007199254740992.000000000, -1 < -9007199254740992.000000000, -1 <= -9007199254740992.000000000, -1 > -9007199254740992.000000000, -1 >= -9007199254740992.000000000, -9007199254740992.000000000 = -1, -9007199254740992.000000000 != -1, -9007199254740992.000000000 < -1, -9007199254740992.000000000 <= -1, -9007199254740992.000000000 > -1, -9007199254740992.000000000 >= -1 , toInt8(-1) = -9007199254740992.000000000, toInt8(-1) != -9007199254740992.000000000, toInt8(-1) < -9007199254740992.000000000, toInt8(-1) <= -9007199254740992.000000000, toInt8(-1) > -9007199254740992.000000000, toInt8(-1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt8(-1), -9007199254740992.000000000 != toInt8(-1), -9007199254740992.000000000 < toInt8(-1), -9007199254740992.000000000 <= toInt8(-1), -9007199254740992.000000000 > toInt8(-1), -9007199254740992.000000000 >= toInt8(-1) , toInt16(-1) = -9007199254740992.000000000, toInt16(-1) != -9007199254740992.000000000, toInt16(-1) < -9007199254740992.000000000, toInt16(-1) <= -9007199254740992.000000000, toInt16(-1) > -9007199254740992.000000000, toInt16(-1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt16(-1), -9007199254740992.000000000 != toInt16(-1), -9007199254740992.000000000 < toInt16(-1), -9007199254740992.000000000 <= toInt16(-1), -9007199254740992.000000000 > toInt16(-1), -9007199254740992.000000000 >= toInt16(-1) , toInt32(-1) = -9007199254740992.000000000, toInt32(-1) != -9007199254740992.000000000, toInt32(-1) < -9007199254740992.000000000, toInt32(-1) <= -9007199254740992.000000000, toInt32(-1) > -9007199254740992.000000000, toInt32(-1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt32(-1), -9007199254740992.000000000 != toInt32(-1), -9007199254740992.000000000 < toInt32(-1), -9007199254740992.000000000 <= toInt32(-1), -9007199254740992.000000000 > toInt32(-1), -9007199254740992.000000000 >= toInt32(-1) , toInt64(-1) = -9007199254740992.000000000, toInt64(-1) != -9007199254740992.000000000, toInt64(-1) < -9007199254740992.000000000, toInt64(-1) <= -9007199254740992.000000000, toInt64(-1) > -9007199254740992.000000000, toInt64(-1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt64(-1), -9007199254740992.000000000 != toInt64(-1), -9007199254740992.000000000 < toInt64(-1), -9007199254740992.000000000 <= toInt64(-1), -9007199254740992.000000000 > toInt64(-1), -9007199254740992.000000000 >= toInt64(-1) ;
SELECT '-1', '-9007199254740992.000000000', -1 = -9007199254740992.000000000, -1 != -9007199254740992.000000000, -1 < -9007199254740992.000000000, -1 <= -9007199254740992.000000000, -1 > -9007199254740992.000000000, -1 >= -9007199254740992.000000000, -9007199254740992.000000000 = -1, -9007199254740992.000000000 != -1, -9007199254740992.000000000 < -1, -9007199254740992.000000000 <= -1, -9007199254740992.000000000 > -1, -9007199254740992.000000000 >= -1 , toInt8(-1) = -9007199254740992.000000000, toInt8(-1) != -9007199254740992.000000000, toInt8(-1) < -9007199254740992.000000000, toInt8(-1) <= -9007199254740992.000000000, toInt8(-1) > -9007199254740992.000000000, toInt8(-1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt8(-1), -9007199254740992.000000000 != toInt8(-1), -9007199254740992.000000000 < toInt8(-1), -9007199254740992.000000000 <= toInt8(-1), -9007199254740992.000000000 > toInt8(-1), -9007199254740992.000000000 >= toInt8(-1) , toInt16(-1) = -9007199254740992.000000000, toInt16(-1) != -9007199254740992.000000000, toInt16(-1) < -9007199254740992.000000000, toInt16(-1) <= -9007199254740992.000000000, toInt16(-1) > -9007199254740992.000000000, toInt16(-1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt16(-1), -9007199254740992.000000000 != toInt16(-1), -9007199254740992.000000000 < toInt16(-1), -9007199254740992.000000000 <= toInt16(-1), -9007199254740992.000000000 > toInt16(-1), -9007199254740992.000000000 >= toInt16(-1) , toInt32(-1) = -9007199254740992.000000000, toInt32(-1) != -9007199254740992.000000000, toInt32(-1) < -9007199254740992.000000000, toInt32(-1) <= -9007199254740992.000000000, toInt32(-1) > -9007199254740992.000000000, toInt32(-1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt32(-1), -9007199254740992.000000000 != toInt32(-1), -9007199254740992.000000000 < toInt32(-1), -9007199254740992.000000000 <= toInt32(-1), -9007199254740992.000000000 > toInt32(-1), -9007199254740992.000000000 >= toInt32(-1) , toInt64(-1) = -9007199254740992.000000000, toInt64(-1) != -9007199254740992.000000000, toInt64(-1) < -9007199254740992.000000000, toInt64(-1) <= -9007199254740992.000000000, toInt64(-1) > -9007199254740992.000000000, toInt64(-1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt64(-1), -9007199254740992.000000000 != toInt64(-1), -9007199254740992.000000000 < toInt64(-1), -9007199254740992.000000000 <= toInt64(-1), -9007199254740992.000000000 > toInt64(-1), -9007199254740992.000000000 >= toInt64(-1) ;
SELECT '-1', '-9007199254740994.000000000', -1 = -9007199254740994.000000000, -1 != -9007199254740994.000000000, -1 < -9007199254740994.000000000, -1 <= -9007199254740994.000000000, -1 > -9007199254740994.000000000, -1 >= -9007199254740994.000000000, -9007199254740994.000000000 = -1, -9007199254740994.000000000 != -1, -9007199254740994.000000000 < -1, -9007199254740994.000000000 <= -1, -9007199254740994.000000000 > -1, -9007199254740994.000000000 >= -1 , toInt8(-1) = -9007199254740994.000000000, toInt8(-1) != -9007199254740994.000000000, toInt8(-1) < -9007199254740994.000000000, toInt8(-1) <= -9007199254740994.000000000, toInt8(-1) > -9007199254740994.000000000, toInt8(-1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt8(-1), -9007199254740994.000000000 != toInt8(-1), -9007199254740994.000000000 < toInt8(-1), -9007199254740994.000000000 <= toInt8(-1), -9007199254740994.000000000 > toInt8(-1), -9007199254740994.000000000 >= toInt8(-1) , toInt16(-1) = -9007199254740994.000000000, toInt16(-1) != -9007199254740994.000000000, toInt16(-1) < -9007199254740994.000000000, toInt16(-1) <= -9007199254740994.000000000, toInt16(-1) > -9007199254740994.000000000, toInt16(-1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt16(-1), -9007199254740994.000000000 != toInt16(-1), -9007199254740994.000000000 < toInt16(-1), -9007199254740994.000000000 <= toInt16(-1), -9007199254740994.000000000 > toInt16(-1), -9007199254740994.000000000 >= toInt16(-1) , toInt32(-1) = -9007199254740994.000000000, toInt32(-1) != -9007199254740994.000000000, toInt32(-1) < -9007199254740994.000000000, toInt32(-1) <= -9007199254740994.000000000, toInt32(-1) > -9007199254740994.000000000, toInt32(-1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt32(-1), -9007199254740994.000000000 != toInt32(-1), -9007199254740994.000000000 < toInt32(-1), -9007199254740994.000000000 <= toInt32(-1), -9007199254740994.000000000 > toInt32(-1), -9007199254740994.000000000 >= toInt32(-1) , toInt64(-1) = -9007199254740994.000000000, toInt64(-1) != -9007199254740994.000000000, toInt64(-1) < -9007199254740994.000000000, toInt64(-1) <= -9007199254740994.000000000, toInt64(-1) > -9007199254740994.000000000, toInt64(-1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt64(-1), -9007199254740994.000000000 != toInt64(-1), -9007199254740994.000000000 < toInt64(-1), -9007199254740994.000000000 <= toInt64(-1), -9007199254740994.000000000 > toInt64(-1), -9007199254740994.000000000 >= toInt64(-1) ;
SELECT '-1', '104.000000000', -1 = 104.000000000, -1 != 104.000000000, -1 < 104.000000000, -1 <= 104.000000000, -1 > 104.000000000, -1 >= 104.000000000, 104.000000000 = -1, 104.000000000 != -1, 104.000000000 < -1, 104.000000000 <= -1, 104.000000000 > -1, 104.000000000 >= -1 , toInt8(-1) = 104.000000000, toInt8(-1) != 104.000000000, toInt8(-1) < 104.000000000, toInt8(-1) <= 104.000000000, toInt8(-1) > 104.000000000, toInt8(-1) >= 104.000000000, 104.000000000 = toInt8(-1), 104.000000000 != toInt8(-1), 104.000000000 < toInt8(-1), 104.000000000 <= toInt8(-1), 104.000000000 > toInt8(-1), 104.000000000 >= toInt8(-1) , toInt16(-1) = 104.000000000, toInt16(-1) != 104.000000000, toInt16(-1) < 104.000000000, toInt16(-1) <= 104.000000000, toInt16(-1) > 104.000000000, toInt16(-1) >= 104.000000000, 104.000000000 = toInt16(-1), 104.000000000 != toInt16(-1), 104.000000000 < toInt16(-1), 104.000000000 <= toInt16(-1), 104.000000000 > toInt16(-1), 104.000000000 >= toInt16(-1) , toInt32(-1) = 104.000000000, toInt32(-1) != 104.000000000, toInt32(-1) < 104.000000000, toInt32(-1) <= 104.000000000, toInt32(-1) > 104.000000000, toInt32(-1) >= 104.000000000, 104.000000000 = toInt32(-1), 104.000000000 != toInt32(-1), 104.000000000 < toInt32(-1), 104.000000000 <= toInt32(-1), 104.000000000 > toInt32(-1), 104.000000000 >= toInt32(-1) , toInt64(-1) = 104.000000000, toInt64(-1) != 104.000000000, toInt64(-1) < 104.000000000, toInt64(-1) <= 104.000000000, toInt64(-1) > 104.000000000, toInt64(-1) >= 104.000000000, 104.000000000 = toInt64(-1), 104.000000000 != toInt64(-1), 104.000000000 < toInt64(-1), 104.000000000 <= toInt64(-1), 104.000000000 > toInt64(-1), 104.000000000 >= toInt64(-1) ;
SELECT '-1', '-4503599627370496.000000000', -1 = -4503599627370496.000000000, -1 != -4503599627370496.000000000, -1 < -4503599627370496.000000000, -1 <= -4503599627370496.000000000, -1 > -4503599627370496.000000000, -1 >= -4503599627370496.000000000, -4503599627370496.000000000 = -1, -4503599627370496.000000000 != -1, -4503599627370496.000000000 < -1, -4503599627370496.000000000 <= -1, -4503599627370496.000000000 > -1, -4503599627370496.000000000 >= -1 , toInt8(-1) = -4503599627370496.000000000, toInt8(-1) != -4503599627370496.000000000, toInt8(-1) < -4503599627370496.000000000, toInt8(-1) <= -4503599627370496.000000000, toInt8(-1) > -4503599627370496.000000000, toInt8(-1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt8(-1), -4503599627370496.000000000 != toInt8(-1), -4503599627370496.000000000 < toInt8(-1), -4503599627370496.000000000 <= toInt8(-1), -4503599627370496.000000000 > toInt8(-1), -4503599627370496.000000000 >= toInt8(-1) , toInt16(-1) = -4503599627370496.000000000, toInt16(-1) != -4503599627370496.000000000, toInt16(-1) < -4503599627370496.000000000, toInt16(-1) <= -4503599627370496.000000000, toInt16(-1) > -4503599627370496.000000000, toInt16(-1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt16(-1), -4503599627370496.000000000 != toInt16(-1), -4503599627370496.000000000 < toInt16(-1), -4503599627370496.000000000 <= toInt16(-1), -4503599627370496.000000000 > toInt16(-1), -4503599627370496.000000000 >= toInt16(-1) , toInt32(-1) = -4503599627370496.000000000, toInt32(-1) != -4503599627370496.000000000, toInt32(-1) < -4503599627370496.000000000, toInt32(-1) <= -4503599627370496.000000000, toInt32(-1) > -4503599627370496.000000000, toInt32(-1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt32(-1), -4503599627370496.000000000 != toInt32(-1), -4503599627370496.000000000 < toInt32(-1), -4503599627370496.000000000 <= toInt32(-1), -4503599627370496.000000000 > toInt32(-1), -4503599627370496.000000000 >= toInt32(-1) , toInt64(-1) = -4503599627370496.000000000, toInt64(-1) != -4503599627370496.000000000, toInt64(-1) < -4503599627370496.000000000, toInt64(-1) <= -4503599627370496.000000000, toInt64(-1) > -4503599627370496.000000000, toInt64(-1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt64(-1), -4503599627370496.000000000 != toInt64(-1), -4503599627370496.000000000 < toInt64(-1), -4503599627370496.000000000 <= toInt64(-1), -4503599627370496.000000000 > toInt64(-1), -4503599627370496.000000000 >= toInt64(-1) ;
SELECT '-1', '-0.500000000', -1 = -0.500000000, -1 != -0.500000000, -1 < -0.500000000, -1 <= -0.500000000, -1 > -0.500000000, -1 >= -0.500000000, -0.500000000 = -1, -0.500000000 != -1, -0.500000000 < -1, -0.500000000 <= -1, -0.500000000 > -1, -0.500000000 >= -1 , toInt8(-1) = -0.500000000, toInt8(-1) != -0.500000000, toInt8(-1) < -0.500000000, toInt8(-1) <= -0.500000000, toInt8(-1) > -0.500000000, toInt8(-1) >= -0.500000000, -0.500000000 = toInt8(-1), -0.500000000 != toInt8(-1), -0.500000000 < toInt8(-1), -0.500000000 <= toInt8(-1), -0.500000000 > toInt8(-1), -0.500000000 >= toInt8(-1) , toInt16(-1) = -0.500000000, toInt16(-1) != -0.500000000, toInt16(-1) < -0.500000000, toInt16(-1) <= -0.500000000, toInt16(-1) > -0.500000000, toInt16(-1) >= -0.500000000, -0.500000000 = toInt16(-1), -0.500000000 != toInt16(-1), -0.500000000 < toInt16(-1), -0.500000000 <= toInt16(-1), -0.500000000 > toInt16(-1), -0.500000000 >= toInt16(-1) , toInt32(-1) = -0.500000000, toInt32(-1) != -0.500000000, toInt32(-1) < -0.500000000, toInt32(-1) <= -0.500000000, toInt32(-1) > -0.500000000, toInt32(-1) >= -0.500000000, -0.500000000 = toInt32(-1), -0.500000000 != toInt32(-1), -0.500000000 < toInt32(-1), -0.500000000 <= toInt32(-1), -0.500000000 > toInt32(-1), -0.500000000 >= toInt32(-1) , toInt64(-1) = -0.500000000, toInt64(-1) != -0.500000000, toInt64(-1) < -0.500000000, toInt64(-1) <= -0.500000000, toInt64(-1) > -0.500000000, toInt64(-1) >= -0.500000000, -0.500000000 = toInt64(-1), -0.500000000 != toInt64(-1), -0.500000000 < toInt64(-1), -0.500000000 <= toInt64(-1), -0.500000000 > toInt64(-1), -0.500000000 >= toInt64(-1) ;
SELECT '-1', '0.500000000', -1 = 0.500000000, -1 != 0.500000000, -1 < 0.500000000, -1 <= 0.500000000, -1 > 0.500000000, -1 >= 0.500000000, 0.500000000 = -1, 0.500000000 != -1, 0.500000000 < -1, 0.500000000 <= -1, 0.500000000 > -1, 0.500000000 >= -1 , toInt8(-1) = 0.500000000, toInt8(-1) != 0.500000000, toInt8(-1) < 0.500000000, toInt8(-1) <= 0.500000000, toInt8(-1) > 0.500000000, toInt8(-1) >= 0.500000000, 0.500000000 = toInt8(-1), 0.500000000 != toInt8(-1), 0.500000000 < toInt8(-1), 0.500000000 <= toInt8(-1), 0.500000000 > toInt8(-1), 0.500000000 >= toInt8(-1) , toInt16(-1) = 0.500000000, toInt16(-1) != 0.500000000, toInt16(-1) < 0.500000000, toInt16(-1) <= 0.500000000, toInt16(-1) > 0.500000000, toInt16(-1) >= 0.500000000, 0.500000000 = toInt16(-1), 0.500000000 != toInt16(-1), 0.500000000 < toInt16(-1), 0.500000000 <= toInt16(-1), 0.500000000 > toInt16(-1), 0.500000000 >= toInt16(-1) , toInt32(-1) = 0.500000000, toInt32(-1) != 0.500000000, toInt32(-1) < 0.500000000, toInt32(-1) <= 0.500000000, toInt32(-1) > 0.500000000, toInt32(-1) >= 0.500000000, 0.500000000 = toInt32(-1), 0.500000000 != toInt32(-1), 0.500000000 < toInt32(-1), 0.500000000 <= toInt32(-1), 0.500000000 > toInt32(-1), 0.500000000 >= toInt32(-1) , toInt64(-1) = 0.500000000, toInt64(-1) != 0.500000000, toInt64(-1) < 0.500000000, toInt64(-1) <= 0.500000000, toInt64(-1) > 0.500000000, toInt64(-1) >= 0.500000000, 0.500000000 = toInt64(-1), 0.500000000 != toInt64(-1), 0.500000000 < toInt64(-1), 0.500000000 <= toInt64(-1), 0.500000000 > toInt64(-1), 0.500000000 >= toInt64(-1) ;
SELECT '-1', '-1.500000000', -1 = -1.500000000, -1 != -1.500000000, -1 < -1.500000000, -1 <= -1.500000000, -1 > -1.500000000, -1 >= -1.500000000, -1.500000000 = -1, -1.500000000 != -1, -1.500000000 < -1, -1.500000000 <= -1, -1.500000000 > -1, -1.500000000 >= -1 , toInt8(-1) = -1.500000000, toInt8(-1) != -1.500000000, toInt8(-1) < -1.500000000, toInt8(-1) <= -1.500000000, toInt8(-1) > -1.500000000, toInt8(-1) >= -1.500000000, -1.500000000 = toInt8(-1), -1.500000000 != toInt8(-1), -1.500000000 < toInt8(-1), -1.500000000 <= toInt8(-1), -1.500000000 > toInt8(-1), -1.500000000 >= toInt8(-1) , toInt16(-1) = -1.500000000, toInt16(-1) != -1.500000000, toInt16(-1) < -1.500000000, toInt16(-1) <= -1.500000000, toInt16(-1) > -1.500000000, toInt16(-1) >= -1.500000000, -1.500000000 = toInt16(-1), -1.500000000 != toInt16(-1), -1.500000000 < toInt16(-1), -1.500000000 <= toInt16(-1), -1.500000000 > toInt16(-1), -1.500000000 >= toInt16(-1) , toInt32(-1) = -1.500000000, toInt32(-1) != -1.500000000, toInt32(-1) < -1.500000000, toInt32(-1) <= -1.500000000, toInt32(-1) > -1.500000000, toInt32(-1) >= -1.500000000, -1.500000000 = toInt32(-1), -1.500000000 != toInt32(-1), -1.500000000 < toInt32(-1), -1.500000000 <= toInt32(-1), -1.500000000 > toInt32(-1), -1.500000000 >= toInt32(-1) , toInt64(-1) = -1.500000000, toInt64(-1) != -1.500000000, toInt64(-1) < -1.500000000, toInt64(-1) <= -1.500000000, toInt64(-1) > -1.500000000, toInt64(-1) >= -1.500000000, -1.500000000 = toInt64(-1), -1.500000000 != toInt64(-1), -1.500000000 < toInt64(-1), -1.500000000 <= toInt64(-1), -1.500000000 > toInt64(-1), -1.500000000 >= toInt64(-1) ;
SELECT '-1', '1.500000000', -1 = 1.500000000, -1 != 1.500000000, -1 < 1.500000000, -1 <= 1.500000000, -1 > 1.500000000, -1 >= 1.500000000, 1.500000000 = -1, 1.500000000 != -1, 1.500000000 < -1, 1.500000000 <= -1, 1.500000000 > -1, 1.500000000 >= -1 , toInt8(-1) = 1.500000000, toInt8(-1) != 1.500000000, toInt8(-1) < 1.500000000, toInt8(-1) <= 1.500000000, toInt8(-1) > 1.500000000, toInt8(-1) >= 1.500000000, 1.500000000 = toInt8(-1), 1.500000000 != toInt8(-1), 1.500000000 < toInt8(-1), 1.500000000 <= toInt8(-1), 1.500000000 > toInt8(-1), 1.500000000 >= toInt8(-1) , toInt16(-1) = 1.500000000, toInt16(-1) != 1.500000000, toInt16(-1) < 1.500000000, toInt16(-1) <= 1.500000000, toInt16(-1) > 1.500000000, toInt16(-1) >= 1.500000000, 1.500000000 = toInt16(-1), 1.500000000 != toInt16(-1), 1.500000000 < toInt16(-1), 1.500000000 <= toInt16(-1), 1.500000000 > toInt16(-1), 1.500000000 >= toInt16(-1) , toInt32(-1) = 1.500000000, toInt32(-1) != 1.500000000, toInt32(-1) < 1.500000000, toInt32(-1) <= 1.500000000, toInt32(-1) > 1.500000000, toInt32(-1) >= 1.500000000, 1.500000000 = toInt32(-1), 1.500000000 != toInt32(-1), 1.500000000 < toInt32(-1), 1.500000000 <= toInt32(-1), 1.500000000 > toInt32(-1), 1.500000000 >= toInt32(-1) , toInt64(-1) = 1.500000000, toInt64(-1) != 1.500000000, toInt64(-1) < 1.500000000, toInt64(-1) <= 1.500000000, toInt64(-1) > 1.500000000, toInt64(-1) >= 1.500000000, 1.500000000 = toInt64(-1), 1.500000000 != toInt64(-1), 1.500000000 < toInt64(-1), 1.500000000 <= toInt64(-1), 1.500000000 > toInt64(-1), 1.500000000 >= toInt64(-1) ;
SELECT '-1', '9007199254740992.000000000', -1 = 9007199254740992.000000000, -1 != 9007199254740992.000000000, -1 < 9007199254740992.000000000, -1 <= 9007199254740992.000000000, -1 > 9007199254740992.000000000, -1 >= 9007199254740992.000000000, 9007199254740992.000000000 = -1, 9007199254740992.000000000 != -1, 9007199254740992.000000000 < -1, 9007199254740992.000000000 <= -1, 9007199254740992.000000000 > -1, 9007199254740992.000000000 >= -1 , toInt8(-1) = 9007199254740992.000000000, toInt8(-1) != 9007199254740992.000000000, toInt8(-1) < 9007199254740992.000000000, toInt8(-1) <= 9007199254740992.000000000, toInt8(-1) > 9007199254740992.000000000, toInt8(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(-1), 9007199254740992.000000000 != toInt8(-1), 9007199254740992.000000000 < toInt8(-1), 9007199254740992.000000000 <= toInt8(-1), 9007199254740992.000000000 > toInt8(-1), 9007199254740992.000000000 >= toInt8(-1) , toInt16(-1) = 9007199254740992.000000000, toInt16(-1) != 9007199254740992.000000000, toInt16(-1) < 9007199254740992.000000000, toInt16(-1) <= 9007199254740992.000000000, toInt16(-1) > 9007199254740992.000000000, toInt16(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(-1), 9007199254740992.000000000 != toInt16(-1), 9007199254740992.000000000 < toInt16(-1), 9007199254740992.000000000 <= toInt16(-1), 9007199254740992.000000000 > toInt16(-1), 9007199254740992.000000000 >= toInt16(-1) , toInt32(-1) = 9007199254740992.000000000, toInt32(-1) != 9007199254740992.000000000, toInt32(-1) < 9007199254740992.000000000, toInt32(-1) <= 9007199254740992.000000000, toInt32(-1) > 9007199254740992.000000000, toInt32(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(-1), 9007199254740992.000000000 != toInt32(-1), 9007199254740992.000000000 < toInt32(-1), 9007199254740992.000000000 <= toInt32(-1), 9007199254740992.000000000 > toInt32(-1), 9007199254740992.000000000 >= toInt32(-1) , toInt64(-1) = 9007199254740992.000000000, toInt64(-1) != 9007199254740992.000000000, toInt64(-1) < 9007199254740992.000000000, toInt64(-1) <= 9007199254740992.000000000, toInt64(-1) > 9007199254740992.000000000, toInt64(-1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(-1), 9007199254740992.000000000 != toInt64(-1), 9007199254740992.000000000 < toInt64(-1), 9007199254740992.000000000 <= toInt64(-1), 9007199254740992.000000000 > toInt64(-1), 9007199254740992.000000000 >= toInt64(-1) ;
SELECT '-1', '2251799813685247.500000000', -1 = 2251799813685247.500000000, -1 != 2251799813685247.500000000, -1 < 2251799813685247.500000000, -1 <= 2251799813685247.500000000, -1 > 2251799813685247.500000000, -1 >= 2251799813685247.500000000, 2251799813685247.500000000 = -1, 2251799813685247.500000000 != -1, 2251799813685247.500000000 < -1, 2251799813685247.500000000 <= -1, 2251799813685247.500000000 > -1, 2251799813685247.500000000 >= -1 , toInt8(-1) = 2251799813685247.500000000, toInt8(-1) != 2251799813685247.500000000, toInt8(-1) < 2251799813685247.500000000, toInt8(-1) <= 2251799813685247.500000000, toInt8(-1) > 2251799813685247.500000000, toInt8(-1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt8(-1), 2251799813685247.500000000 != toInt8(-1), 2251799813685247.500000000 < toInt8(-1), 2251799813685247.500000000 <= toInt8(-1), 2251799813685247.500000000 > toInt8(-1), 2251799813685247.500000000 >= toInt8(-1) , toInt16(-1) = 2251799813685247.500000000, toInt16(-1) != 2251799813685247.500000000, toInt16(-1) < 2251799813685247.500000000, toInt16(-1) <= 2251799813685247.500000000, toInt16(-1) > 2251799813685247.500000000, toInt16(-1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt16(-1), 2251799813685247.500000000 != toInt16(-1), 2251799813685247.500000000 < toInt16(-1), 2251799813685247.500000000 <= toInt16(-1), 2251799813685247.500000000 > toInt16(-1), 2251799813685247.500000000 >= toInt16(-1) , toInt32(-1) = 2251799813685247.500000000, toInt32(-1) != 2251799813685247.500000000, toInt32(-1) < 2251799813685247.500000000, toInt32(-1) <= 2251799813685247.500000000, toInt32(-1) > 2251799813685247.500000000, toInt32(-1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt32(-1), 2251799813685247.500000000 != toInt32(-1), 2251799813685247.500000000 < toInt32(-1), 2251799813685247.500000000 <= toInt32(-1), 2251799813685247.500000000 > toInt32(-1), 2251799813685247.500000000 >= toInt32(-1) , toInt64(-1) = 2251799813685247.500000000, toInt64(-1) != 2251799813685247.500000000, toInt64(-1) < 2251799813685247.500000000, toInt64(-1) <= 2251799813685247.500000000, toInt64(-1) > 2251799813685247.500000000, toInt64(-1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt64(-1), 2251799813685247.500000000 != toInt64(-1), 2251799813685247.500000000 < toInt64(-1), 2251799813685247.500000000 <= toInt64(-1), 2251799813685247.500000000 > toInt64(-1), 2251799813685247.500000000 >= toInt64(-1) ;
SELECT '-1', '2251799813685248.500000000', -1 = 2251799813685248.500000000, -1 != 2251799813685248.500000000, -1 < 2251799813685248.500000000, -1 <= 2251799813685248.500000000, -1 > 2251799813685248.500000000, -1 >= 2251799813685248.500000000, 2251799813685248.500000000 = -1, 2251799813685248.500000000 != -1, 2251799813685248.500000000 < -1, 2251799813685248.500000000 <= -1, 2251799813685248.500000000 > -1, 2251799813685248.500000000 >= -1 , toInt8(-1) = 2251799813685248.500000000, toInt8(-1) != 2251799813685248.500000000, toInt8(-1) < 2251799813685248.500000000, toInt8(-1) <= 2251799813685248.500000000, toInt8(-1) > 2251799813685248.500000000, toInt8(-1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt8(-1), 2251799813685248.500000000 != toInt8(-1), 2251799813685248.500000000 < toInt8(-1), 2251799813685248.500000000 <= toInt8(-1), 2251799813685248.500000000 > toInt8(-1), 2251799813685248.500000000 >= toInt8(-1) , toInt16(-1) = 2251799813685248.500000000, toInt16(-1) != 2251799813685248.500000000, toInt16(-1) < 2251799813685248.500000000, toInt16(-1) <= 2251799813685248.500000000, toInt16(-1) > 2251799813685248.500000000, toInt16(-1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt16(-1), 2251799813685248.500000000 != toInt16(-1), 2251799813685248.500000000 < toInt16(-1), 2251799813685248.500000000 <= toInt16(-1), 2251799813685248.500000000 > toInt16(-1), 2251799813685248.500000000 >= toInt16(-1) , toInt32(-1) = 2251799813685248.500000000, toInt32(-1) != 2251799813685248.500000000, toInt32(-1) < 2251799813685248.500000000, toInt32(-1) <= 2251799813685248.500000000, toInt32(-1) > 2251799813685248.500000000, toInt32(-1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt32(-1), 2251799813685248.500000000 != toInt32(-1), 2251799813685248.500000000 < toInt32(-1), 2251799813685248.500000000 <= toInt32(-1), 2251799813685248.500000000 > toInt32(-1), 2251799813685248.500000000 >= toInt32(-1) , toInt64(-1) = 2251799813685248.500000000, toInt64(-1) != 2251799813685248.500000000, toInt64(-1) < 2251799813685248.500000000, toInt64(-1) <= 2251799813685248.500000000, toInt64(-1) > 2251799813685248.500000000, toInt64(-1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt64(-1), 2251799813685248.500000000 != toInt64(-1), 2251799813685248.500000000 < toInt64(-1), 2251799813685248.500000000 <= toInt64(-1), 2251799813685248.500000000 > toInt64(-1), 2251799813685248.500000000 >= toInt64(-1) ;
SELECT '-1', '1152921504606846976.000000000', -1 = 1152921504606846976.000000000, -1 != 1152921504606846976.000000000, -1 < 1152921504606846976.000000000, -1 <= 1152921504606846976.000000000, -1 > 1152921504606846976.000000000, -1 >= 1152921504606846976.000000000, 1152921504606846976.000000000 = -1, 1152921504606846976.000000000 != -1, 1152921504606846976.000000000 < -1, 1152921504606846976.000000000 <= -1, 1152921504606846976.000000000 > -1, 1152921504606846976.000000000 >= -1 , toInt8(-1) = 1152921504606846976.000000000, toInt8(-1) != 1152921504606846976.000000000, toInt8(-1) < 1152921504606846976.000000000, toInt8(-1) <= 1152921504606846976.000000000, toInt8(-1) > 1152921504606846976.000000000, toInt8(-1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt8(-1), 1152921504606846976.000000000 != toInt8(-1), 1152921504606846976.000000000 < toInt8(-1), 1152921504606846976.000000000 <= toInt8(-1), 1152921504606846976.000000000 > toInt8(-1), 1152921504606846976.000000000 >= toInt8(-1) , toInt16(-1) = 1152921504606846976.000000000, toInt16(-1) != 1152921504606846976.000000000, toInt16(-1) < 1152921504606846976.000000000, toInt16(-1) <= 1152921504606846976.000000000, toInt16(-1) > 1152921504606846976.000000000, toInt16(-1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt16(-1), 1152921504606846976.000000000 != toInt16(-1), 1152921504606846976.000000000 < toInt16(-1), 1152921504606846976.000000000 <= toInt16(-1), 1152921504606846976.000000000 > toInt16(-1), 1152921504606846976.000000000 >= toInt16(-1) , toInt32(-1) = 1152921504606846976.000000000, toInt32(-1) != 1152921504606846976.000000000, toInt32(-1) < 1152921504606846976.000000000, toInt32(-1) <= 1152921504606846976.000000000, toInt32(-1) > 1152921504606846976.000000000, toInt32(-1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt32(-1), 1152921504606846976.000000000 != toInt32(-1), 1152921504606846976.000000000 < toInt32(-1), 1152921504606846976.000000000 <= toInt32(-1), 1152921504606846976.000000000 > toInt32(-1), 1152921504606846976.000000000 >= toInt32(-1) , toInt64(-1) = 1152921504606846976.000000000, toInt64(-1) != 1152921504606846976.000000000, toInt64(-1) < 1152921504606846976.000000000, toInt64(-1) <= 1152921504606846976.000000000, toInt64(-1) > 1152921504606846976.000000000, toInt64(-1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt64(-1), 1152921504606846976.000000000 != toInt64(-1), 1152921504606846976.000000000 < toInt64(-1), 1152921504606846976.000000000 <= toInt64(-1), 1152921504606846976.000000000 > toInt64(-1), 1152921504606846976.000000000 >= toInt64(-1) ;
SELECT '-1', '-1152921504606846976.000000000', -1 = -1152921504606846976.000000000, -1 != -1152921504606846976.000000000, -1 < -1152921504606846976.000000000, -1 <= -1152921504606846976.000000000, -1 > -1152921504606846976.000000000, -1 >= -1152921504606846976.000000000, -1152921504606846976.000000000 = -1, -1152921504606846976.000000000 != -1, -1152921504606846976.000000000 < -1, -1152921504606846976.000000000 <= -1, -1152921504606846976.000000000 > -1, -1152921504606846976.000000000 >= -1 , toInt8(-1) = -1152921504606846976.000000000, toInt8(-1) != -1152921504606846976.000000000, toInt8(-1) < -1152921504606846976.000000000, toInt8(-1) <= -1152921504606846976.000000000, toInt8(-1) > -1152921504606846976.000000000, toInt8(-1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt8(-1), -1152921504606846976.000000000 != toInt8(-1), -1152921504606846976.000000000 < toInt8(-1), -1152921504606846976.000000000 <= toInt8(-1), -1152921504606846976.000000000 > toInt8(-1), -1152921504606846976.000000000 >= toInt8(-1) , toInt16(-1) = -1152921504606846976.000000000, toInt16(-1) != -1152921504606846976.000000000, toInt16(-1) < -1152921504606846976.000000000, toInt16(-1) <= -1152921504606846976.000000000, toInt16(-1) > -1152921504606846976.000000000, toInt16(-1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt16(-1), -1152921504606846976.000000000 != toInt16(-1), -1152921504606846976.000000000 < toInt16(-1), -1152921504606846976.000000000 <= toInt16(-1), -1152921504606846976.000000000 > toInt16(-1), -1152921504606846976.000000000 >= toInt16(-1) , toInt32(-1) = -1152921504606846976.000000000, toInt32(-1) != -1152921504606846976.000000000, toInt32(-1) < -1152921504606846976.000000000, toInt32(-1) <= -1152921504606846976.000000000, toInt32(-1) > -1152921504606846976.000000000, toInt32(-1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt32(-1), -1152921504606846976.000000000 != toInt32(-1), -1152921504606846976.000000000 < toInt32(-1), -1152921504606846976.000000000 <= toInt32(-1), -1152921504606846976.000000000 > toInt32(-1), -1152921504606846976.000000000 >= toInt32(-1) , toInt64(-1) = -1152921504606846976.000000000, toInt64(-1) != -1152921504606846976.000000000, toInt64(-1) < -1152921504606846976.000000000, toInt64(-1) <= -1152921504606846976.000000000, toInt64(-1) > -1152921504606846976.000000000, toInt64(-1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt64(-1), -1152921504606846976.000000000 != toInt64(-1), -1152921504606846976.000000000 < toInt64(-1), -1152921504606846976.000000000 <= toInt64(-1), -1152921504606846976.000000000 > toInt64(-1), -1152921504606846976.000000000 >= toInt64(-1) ;
SELECT '-1', '-9223372036854786048.000000000', -1 = -9223372036854786048.000000000, -1 != -9223372036854786048.000000000, -1 < -9223372036854786048.000000000, -1 <= -9223372036854786048.000000000, -1 > -9223372036854786048.000000000, -1 >= -9223372036854786048.000000000, -9223372036854786048.000000000 = -1, -9223372036854786048.000000000 != -1, -9223372036854786048.000000000 < -1, -9223372036854786048.000000000 <= -1, -9223372036854786048.000000000 > -1, -9223372036854786048.000000000 >= -1 , toInt8(-1) = -9223372036854786048.000000000, toInt8(-1) != -9223372036854786048.000000000, toInt8(-1) < -9223372036854786048.000000000, toInt8(-1) <= -9223372036854786048.000000000, toInt8(-1) > -9223372036854786048.000000000, toInt8(-1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt8(-1), -9223372036854786048.000000000 != toInt8(-1), -9223372036854786048.000000000 < toInt8(-1), -9223372036854786048.000000000 <= toInt8(-1), -9223372036854786048.000000000 > toInt8(-1), -9223372036854786048.000000000 >= toInt8(-1) , toInt16(-1) = -9223372036854786048.000000000, toInt16(-1) != -9223372036854786048.000000000, toInt16(-1) < -9223372036854786048.000000000, toInt16(-1) <= -9223372036854786048.000000000, toInt16(-1) > -9223372036854786048.000000000, toInt16(-1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt16(-1), -9223372036854786048.000000000 != toInt16(-1), -9223372036854786048.000000000 < toInt16(-1), -9223372036854786048.000000000 <= toInt16(-1), -9223372036854786048.000000000 > toInt16(-1), -9223372036854786048.000000000 >= toInt16(-1) , toInt32(-1) = -9223372036854786048.000000000, toInt32(-1) != -9223372036854786048.000000000, toInt32(-1) < -9223372036854786048.000000000, toInt32(-1) <= -9223372036854786048.000000000, toInt32(-1) > -9223372036854786048.000000000, toInt32(-1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt32(-1), -9223372036854786048.000000000 != toInt32(-1), -9223372036854786048.000000000 < toInt32(-1), -9223372036854786048.000000000 <= toInt32(-1), -9223372036854786048.000000000 > toInt32(-1), -9223372036854786048.000000000 >= toInt32(-1) , toInt64(-1) = -9223372036854786048.000000000, toInt64(-1) != -9223372036854786048.000000000, toInt64(-1) < -9223372036854786048.000000000, toInt64(-1) <= -9223372036854786048.000000000, toInt64(-1) > -9223372036854786048.000000000, toInt64(-1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt64(-1), -9223372036854786048.000000000 != toInt64(-1), -9223372036854786048.000000000 < toInt64(-1), -9223372036854786048.000000000 <= toInt64(-1), -9223372036854786048.000000000 > toInt64(-1), -9223372036854786048.000000000 >= toInt64(-1) ;
SELECT '-1', '9223372036854786048.000000000', -1 = 9223372036854786048.000000000, -1 != 9223372036854786048.000000000, -1 < 9223372036854786048.000000000, -1 <= 9223372036854786048.000000000, -1 > 9223372036854786048.000000000, -1 >= 9223372036854786048.000000000, 9223372036854786048.000000000 = -1, 9223372036854786048.000000000 != -1, 9223372036854786048.000000000 < -1, 9223372036854786048.000000000 <= -1, 9223372036854786048.000000000 > -1, 9223372036854786048.000000000 >= -1 , toInt8(-1) = 9223372036854786048.000000000, toInt8(-1) != 9223372036854786048.000000000, toInt8(-1) < 9223372036854786048.000000000, toInt8(-1) <= 9223372036854786048.000000000, toInt8(-1) > 9223372036854786048.000000000, toInt8(-1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt8(-1), 9223372036854786048.000000000 != toInt8(-1), 9223372036854786048.000000000 < toInt8(-1), 9223372036854786048.000000000 <= toInt8(-1), 9223372036854786048.000000000 > toInt8(-1), 9223372036854786048.000000000 >= toInt8(-1) , toInt16(-1) = 9223372036854786048.000000000, toInt16(-1) != 9223372036854786048.000000000, toInt16(-1) < 9223372036854786048.000000000, toInt16(-1) <= 9223372036854786048.000000000, toInt16(-1) > 9223372036854786048.000000000, toInt16(-1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt16(-1), 9223372036854786048.000000000 != toInt16(-1), 9223372036854786048.000000000 < toInt16(-1), 9223372036854786048.000000000 <= toInt16(-1), 9223372036854786048.000000000 > toInt16(-1), 9223372036854786048.000000000 >= toInt16(-1) , toInt32(-1) = 9223372036854786048.000000000, toInt32(-1) != 9223372036854786048.000000000, toInt32(-1) < 9223372036854786048.000000000, toInt32(-1) <= 9223372036854786048.000000000, toInt32(-1) > 9223372036854786048.000000000, toInt32(-1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt32(-1), 9223372036854786048.000000000 != toInt32(-1), 9223372036854786048.000000000 < toInt32(-1), 9223372036854786048.000000000 <= toInt32(-1), 9223372036854786048.000000000 > toInt32(-1), 9223372036854786048.000000000 >= toInt32(-1) , toInt64(-1) = 9223372036854786048.000000000, toInt64(-1) != 9223372036854786048.000000000, toInt64(-1) < 9223372036854786048.000000000, toInt64(-1) <= 9223372036854786048.000000000, toInt64(-1) > 9223372036854786048.000000000, toInt64(-1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt64(-1), 9223372036854786048.000000000 != toInt64(-1), 9223372036854786048.000000000 < toInt64(-1), 9223372036854786048.000000000 <= toInt64(-1), 9223372036854786048.000000000 > toInt64(-1), 9223372036854786048.000000000 >= toInt64(-1) ;
SELECT '1', '0.000000000', 1 = 0.000000000, 1 != 0.000000000, 1 < 0.000000000, 1 <= 0.000000000, 1 > 0.000000000, 1 >= 0.000000000, 0.000000000 = 1, 0.000000000 != 1, 0.000000000 < 1, 0.000000000 <= 1, 0.000000000 > 1, 0.000000000 >= 1 , toUInt8(1) = 0.000000000, toUInt8(1) != 0.000000000, toUInt8(1) < 0.000000000, toUInt8(1) <= 0.000000000, toUInt8(1) > 0.000000000, toUInt8(1) >= 0.000000000, 0.000000000 = toUInt8(1), 0.000000000 != toUInt8(1), 0.000000000 < toUInt8(1), 0.000000000 <= toUInt8(1), 0.000000000 > toUInt8(1), 0.000000000 >= toUInt8(1) , toInt8(1) = 0.000000000, toInt8(1) != 0.000000000, toInt8(1) < 0.000000000, toInt8(1) <= 0.000000000, toInt8(1) > 0.000000000, toInt8(1) >= 0.000000000, 0.000000000 = toInt8(1), 0.000000000 != toInt8(1), 0.000000000 < toInt8(1), 0.000000000 <= toInt8(1), 0.000000000 > toInt8(1), 0.000000000 >= toInt8(1) , toUInt16(1) = 0.000000000, toUInt16(1) != 0.000000000, toUInt16(1) < 0.000000000, toUInt16(1) <= 0.000000000, toUInt16(1) > 0.000000000, toUInt16(1) >= 0.000000000, 0.000000000 = toUInt16(1), 0.000000000 != toUInt16(1), 0.000000000 < toUInt16(1), 0.000000000 <= toUInt16(1), 0.000000000 > toUInt16(1), 0.000000000 >= toUInt16(1) , toInt16(1) = 0.000000000, toInt16(1) != 0.000000000, toInt16(1) < 0.000000000, toInt16(1) <= 0.000000000, toInt16(1) > 0.000000000, toInt16(1) >= 0.000000000, 0.000000000 = toInt16(1), 0.000000000 != toInt16(1), 0.000000000 < toInt16(1), 0.000000000 <= toInt16(1), 0.000000000 > toInt16(1), 0.000000000 >= toInt16(1) , toUInt32(1) = 0.000000000, toUInt32(1) != 0.000000000, toUInt32(1) < 0.000000000, toUInt32(1) <= 0.000000000, toUInt32(1) > 0.000000000, toUInt32(1) >= 0.000000000, 0.000000000 = toUInt32(1), 0.000000000 != toUInt32(1), 0.000000000 < toUInt32(1), 0.000000000 <= toUInt32(1), 0.000000000 > toUInt32(1), 0.000000000 >= toUInt32(1) , toInt32(1) = 0.000000000, toInt32(1) != 0.000000000, toInt32(1) < 0.000000000, toInt32(1) <= 0.000000000, toInt32(1) > 0.000000000, toInt32(1) >= 0.000000000, 0.000000000 = toInt32(1), 0.000000000 != toInt32(1), 0.000000000 < toInt32(1), 0.000000000 <= toInt32(1), 0.000000000 > toInt32(1), 0.000000000 >= toInt32(1) , toUInt64(1) = 0.000000000, toUInt64(1) != 0.000000000, toUInt64(1) < 0.000000000, toUInt64(1) <= 0.000000000, toUInt64(1) > 0.000000000, toUInt64(1) >= 0.000000000, 0.000000000 = toUInt64(1), 0.000000000 != toUInt64(1), 0.000000000 < toUInt64(1), 0.000000000 <= toUInt64(1), 0.000000000 > toUInt64(1), 0.000000000 >= toUInt64(1) , toInt64(1) = 0.000000000, toInt64(1) != 0.000000000, toInt64(1) < 0.000000000, toInt64(1) <= 0.000000000, toInt64(1) > 0.000000000, toInt64(1) >= 0.000000000, 0.000000000 = toInt64(1), 0.000000000 != toInt64(1), 0.000000000 < toInt64(1), 0.000000000 <= toInt64(1), 0.000000000 > toInt64(1), 0.000000000 >= toInt64(1) ;
SELECT '1', '-1.000000000', 1 = -1.000000000, 1 != -1.000000000, 1 < -1.000000000, 1 <= -1.000000000, 1 > -1.000000000, 1 >= -1.000000000, -1.000000000 = 1, -1.000000000 != 1, -1.000000000 < 1, -1.000000000 <= 1, -1.000000000 > 1, -1.000000000 >= 1 , toUInt8(1) = -1.000000000, toUInt8(1) != -1.000000000, toUInt8(1) < -1.000000000, toUInt8(1) <= -1.000000000, toUInt8(1) > -1.000000000, toUInt8(1) >= -1.000000000, -1.000000000 = toUInt8(1), -1.000000000 != toUInt8(1), -1.000000000 < toUInt8(1), -1.000000000 <= toUInt8(1), -1.000000000 > toUInt8(1), -1.000000000 >= toUInt8(1) , toInt8(1) = -1.000000000, toInt8(1) != -1.000000000, toInt8(1) < -1.000000000, toInt8(1) <= -1.000000000, toInt8(1) > -1.000000000, toInt8(1) >= -1.000000000, -1.000000000 = toInt8(1), -1.000000000 != toInt8(1), -1.000000000 < toInt8(1), -1.000000000 <= toInt8(1), -1.000000000 > toInt8(1), -1.000000000 >= toInt8(1) , toUInt16(1) = -1.000000000, toUInt16(1) != -1.000000000, toUInt16(1) < -1.000000000, toUInt16(1) <= -1.000000000, toUInt16(1) > -1.000000000, toUInt16(1) >= -1.000000000, -1.000000000 = toUInt16(1), -1.000000000 != toUInt16(1), -1.000000000 < toUInt16(1), -1.000000000 <= toUInt16(1), -1.000000000 > toUInt16(1), -1.000000000 >= toUInt16(1) , toInt16(1) = -1.000000000, toInt16(1) != -1.000000000, toInt16(1) < -1.000000000, toInt16(1) <= -1.000000000, toInt16(1) > -1.000000000, toInt16(1) >= -1.000000000, -1.000000000 = toInt16(1), -1.000000000 != toInt16(1), -1.000000000 < toInt16(1), -1.000000000 <= toInt16(1), -1.000000000 > toInt16(1), -1.000000000 >= toInt16(1) , toUInt32(1) = -1.000000000, toUInt32(1) != -1.000000000, toUInt32(1) < -1.000000000, toUInt32(1) <= -1.000000000, toUInt32(1) > -1.000000000, toUInt32(1) >= -1.000000000, -1.000000000 = toUInt32(1), -1.000000000 != toUInt32(1), -1.000000000 < toUInt32(1), -1.000000000 <= toUInt32(1), -1.000000000 > toUInt32(1), -1.000000000 >= toUInt32(1) , toInt32(1) = -1.000000000, toInt32(1) != -1.000000000, toInt32(1) < -1.000000000, toInt32(1) <= -1.000000000, toInt32(1) > -1.000000000, toInt32(1) >= -1.000000000, -1.000000000 = toInt32(1), -1.000000000 != toInt32(1), -1.000000000 < toInt32(1), -1.000000000 <= toInt32(1), -1.000000000 > toInt32(1), -1.000000000 >= toInt32(1) , toUInt64(1) = -1.000000000, toUInt64(1) != -1.000000000, toUInt64(1) < -1.000000000, toUInt64(1) <= -1.000000000, toUInt64(1) > -1.000000000, toUInt64(1) >= -1.000000000, -1.000000000 = toUInt64(1), -1.000000000 != toUInt64(1), -1.000000000 < toUInt64(1), -1.000000000 <= toUInt64(1), -1.000000000 > toUInt64(1), -1.000000000 >= toUInt64(1) , toInt64(1) = -1.000000000, toInt64(1) != -1.000000000, toInt64(1) < -1.000000000, toInt64(1) <= -1.000000000, toInt64(1) > -1.000000000, toInt64(1) >= -1.000000000, -1.000000000 = toInt64(1), -1.000000000 != toInt64(1), -1.000000000 < toInt64(1), -1.000000000 <= toInt64(1), -1.000000000 > toInt64(1), -1.000000000 >= toInt64(1) ;
SELECT '1', '1.000000000', 1 = 1.000000000, 1 != 1.000000000, 1 < 1.000000000, 1 <= 1.000000000, 1 > 1.000000000, 1 >= 1.000000000, 1.000000000 = 1, 1.000000000 != 1, 1.000000000 < 1, 1.000000000 <= 1, 1.000000000 > 1, 1.000000000 >= 1 , toUInt8(1) = 1.000000000, toUInt8(1) != 1.000000000, toUInt8(1) < 1.000000000, toUInt8(1) <= 1.000000000, toUInt8(1) > 1.000000000, toUInt8(1) >= 1.000000000, 1.000000000 = toUInt8(1), 1.000000000 != toUInt8(1), 1.000000000 < toUInt8(1), 1.000000000 <= toUInt8(1), 1.000000000 > toUInt8(1), 1.000000000 >= toUInt8(1) , toInt8(1) = 1.000000000, toInt8(1) != 1.000000000, toInt8(1) < 1.000000000, toInt8(1) <= 1.000000000, toInt8(1) > 1.000000000, toInt8(1) >= 1.000000000, 1.000000000 = toInt8(1), 1.000000000 != toInt8(1), 1.000000000 < toInt8(1), 1.000000000 <= toInt8(1), 1.000000000 > toInt8(1), 1.000000000 >= toInt8(1) , toUInt16(1) = 1.000000000, toUInt16(1) != 1.000000000, toUInt16(1) < 1.000000000, toUInt16(1) <= 1.000000000, toUInt16(1) > 1.000000000, toUInt16(1) >= 1.000000000, 1.000000000 = toUInt16(1), 1.000000000 != toUInt16(1), 1.000000000 < toUInt16(1), 1.000000000 <= toUInt16(1), 1.000000000 > toUInt16(1), 1.000000000 >= toUInt16(1) , toInt16(1) = 1.000000000, toInt16(1) != 1.000000000, toInt16(1) < 1.000000000, toInt16(1) <= 1.000000000, toInt16(1) > 1.000000000, toInt16(1) >= 1.000000000, 1.000000000 = toInt16(1), 1.000000000 != toInt16(1), 1.000000000 < toInt16(1), 1.000000000 <= toInt16(1), 1.000000000 > toInt16(1), 1.000000000 >= toInt16(1) , toUInt32(1) = 1.000000000, toUInt32(1) != 1.000000000, toUInt32(1) < 1.000000000, toUInt32(1) <= 1.000000000, toUInt32(1) > 1.000000000, toUInt32(1) >= 1.000000000, 1.000000000 = toUInt32(1), 1.000000000 != toUInt32(1), 1.000000000 < toUInt32(1), 1.000000000 <= toUInt32(1), 1.000000000 > toUInt32(1), 1.000000000 >= toUInt32(1) , toInt32(1) = 1.000000000, toInt32(1) != 1.000000000, toInt32(1) < 1.000000000, toInt32(1) <= 1.000000000, toInt32(1) > 1.000000000, toInt32(1) >= 1.000000000, 1.000000000 = toInt32(1), 1.000000000 != toInt32(1), 1.000000000 < toInt32(1), 1.000000000 <= toInt32(1), 1.000000000 > toInt32(1), 1.000000000 >= toInt32(1) , toUInt64(1) = 1.000000000, toUInt64(1) != 1.000000000, toUInt64(1) < 1.000000000, toUInt64(1) <= 1.000000000, toUInt64(1) > 1.000000000, toUInt64(1) >= 1.000000000, 1.000000000 = toUInt64(1), 1.000000000 != toUInt64(1), 1.000000000 < toUInt64(1), 1.000000000 <= toUInt64(1), 1.000000000 > toUInt64(1), 1.000000000 >= toUInt64(1) , toInt64(1) = 1.000000000, toInt64(1) != 1.000000000, toInt64(1) < 1.000000000, toInt64(1) <= 1.000000000, toInt64(1) > 1.000000000, toInt64(1) >= 1.000000000, 1.000000000 = toInt64(1), 1.000000000 != toInt64(1), 1.000000000 < toInt64(1), 1.000000000 <= toInt64(1), 1.000000000 > toInt64(1), 1.000000000 >= toInt64(1) ;
SELECT '1', '18446744073709551616.000000000', 1 = 18446744073709551616.000000000, 1 != 18446744073709551616.000000000, 1 < 18446744073709551616.000000000, 1 <= 18446744073709551616.000000000, 1 > 18446744073709551616.000000000, 1 >= 18446744073709551616.000000000, 18446744073709551616.000000000 = 1, 18446744073709551616.000000000 != 1, 18446744073709551616.000000000 < 1, 18446744073709551616.000000000 <= 1, 18446744073709551616.000000000 > 1, 18446744073709551616.000000000 >= 1 , toUInt8(1) = 18446744073709551616.000000000, toUInt8(1) != 18446744073709551616.000000000, toUInt8(1) < 18446744073709551616.000000000, toUInt8(1) <= 18446744073709551616.000000000, toUInt8(1) > 18446744073709551616.000000000, toUInt8(1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt8(1), 18446744073709551616.000000000 != toUInt8(1), 18446744073709551616.000000000 < toUInt8(1), 18446744073709551616.000000000 <= toUInt8(1), 18446744073709551616.000000000 > toUInt8(1), 18446744073709551616.000000000 >= toUInt8(1) , toInt8(1) = 18446744073709551616.000000000, toInt8(1) != 18446744073709551616.000000000, toInt8(1) < 18446744073709551616.000000000, toInt8(1) <= 18446744073709551616.000000000, toInt8(1) > 18446744073709551616.000000000, toInt8(1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt8(1), 18446744073709551616.000000000 != toInt8(1), 18446744073709551616.000000000 < toInt8(1), 18446744073709551616.000000000 <= toInt8(1), 18446744073709551616.000000000 > toInt8(1), 18446744073709551616.000000000 >= toInt8(1) , toUInt16(1) = 18446744073709551616.000000000, toUInt16(1) != 18446744073709551616.000000000, toUInt16(1) < 18446744073709551616.000000000, toUInt16(1) <= 18446744073709551616.000000000, toUInt16(1) > 18446744073709551616.000000000, toUInt16(1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt16(1), 18446744073709551616.000000000 != toUInt16(1), 18446744073709551616.000000000 < toUInt16(1), 18446744073709551616.000000000 <= toUInt16(1), 18446744073709551616.000000000 > toUInt16(1), 18446744073709551616.000000000 >= toUInt16(1) , toInt16(1) = 18446744073709551616.000000000, toInt16(1) != 18446744073709551616.000000000, toInt16(1) < 18446744073709551616.000000000, toInt16(1) <= 18446744073709551616.000000000, toInt16(1) > 18446744073709551616.000000000, toInt16(1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt16(1), 18446744073709551616.000000000 != toInt16(1), 18446744073709551616.000000000 < toInt16(1), 18446744073709551616.000000000 <= toInt16(1), 18446744073709551616.000000000 > toInt16(1), 18446744073709551616.000000000 >= toInt16(1) , toUInt32(1) = 18446744073709551616.000000000, toUInt32(1) != 18446744073709551616.000000000, toUInt32(1) < 18446744073709551616.000000000, toUInt32(1) <= 18446744073709551616.000000000, toUInt32(1) > 18446744073709551616.000000000, toUInt32(1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt32(1), 18446744073709551616.000000000 != toUInt32(1), 18446744073709551616.000000000 < toUInt32(1), 18446744073709551616.000000000 <= toUInt32(1), 18446744073709551616.000000000 > toUInt32(1), 18446744073709551616.000000000 >= toUInt32(1) , toInt32(1) = 18446744073709551616.000000000, toInt32(1) != 18446744073709551616.000000000, toInt32(1) < 18446744073709551616.000000000, toInt32(1) <= 18446744073709551616.000000000, toInt32(1) > 18446744073709551616.000000000, toInt32(1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt32(1), 18446744073709551616.000000000 != toInt32(1), 18446744073709551616.000000000 < toInt32(1), 18446744073709551616.000000000 <= toInt32(1), 18446744073709551616.000000000 > toInt32(1), 18446744073709551616.000000000 >= toInt32(1) , toUInt64(1) = 18446744073709551616.000000000, toUInt64(1) != 18446744073709551616.000000000, toUInt64(1) < 18446744073709551616.000000000, toUInt64(1) <= 18446744073709551616.000000000, toUInt64(1) > 18446744073709551616.000000000, toUInt64(1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt64(1), 18446744073709551616.000000000 != toUInt64(1), 18446744073709551616.000000000 < toUInt64(1), 18446744073709551616.000000000 <= toUInt64(1), 18446744073709551616.000000000 > toUInt64(1), 18446744073709551616.000000000 >= toUInt64(1) , toInt64(1) = 18446744073709551616.000000000, toInt64(1) != 18446744073709551616.000000000, toInt64(1) < 18446744073709551616.000000000, toInt64(1) <= 18446744073709551616.000000000, toInt64(1) > 18446744073709551616.000000000, toInt64(1) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toInt64(1), 18446744073709551616.000000000 != toInt64(1), 18446744073709551616.000000000 < toInt64(1), 18446744073709551616.000000000 <= toInt64(1), 18446744073709551616.000000000 > toInt64(1), 18446744073709551616.000000000 >= toInt64(1) ;
SELECT '1', '9223372036854775808.000000000', 1 = 9223372036854775808.000000000, 1 != 9223372036854775808.000000000, 1 < 9223372036854775808.000000000, 1 <= 9223372036854775808.000000000, 1 > 9223372036854775808.000000000, 1 >= 9223372036854775808.000000000, 9223372036854775808.000000000 = 1, 9223372036854775808.000000000 != 1, 9223372036854775808.000000000 < 1, 9223372036854775808.000000000 <= 1, 9223372036854775808.000000000 > 1, 9223372036854775808.000000000 >= 1 , toUInt8(1) = 9223372036854775808.000000000, toUInt8(1) != 9223372036854775808.000000000, toUInt8(1) < 9223372036854775808.000000000, toUInt8(1) <= 9223372036854775808.000000000, toUInt8(1) > 9223372036854775808.000000000, toUInt8(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt8(1), 9223372036854775808.000000000 != toUInt8(1), 9223372036854775808.000000000 < toUInt8(1), 9223372036854775808.000000000 <= toUInt8(1), 9223372036854775808.000000000 > toUInt8(1), 9223372036854775808.000000000 >= toUInt8(1) , toInt8(1) = 9223372036854775808.000000000, toInt8(1) != 9223372036854775808.000000000, toInt8(1) < 9223372036854775808.000000000, toInt8(1) <= 9223372036854775808.000000000, toInt8(1) > 9223372036854775808.000000000, toInt8(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt8(1), 9223372036854775808.000000000 != toInt8(1), 9223372036854775808.000000000 < toInt8(1), 9223372036854775808.000000000 <= toInt8(1), 9223372036854775808.000000000 > toInt8(1), 9223372036854775808.000000000 >= toInt8(1) , toUInt16(1) = 9223372036854775808.000000000, toUInt16(1) != 9223372036854775808.000000000, toUInt16(1) < 9223372036854775808.000000000, toUInt16(1) <= 9223372036854775808.000000000, toUInt16(1) > 9223372036854775808.000000000, toUInt16(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt16(1), 9223372036854775808.000000000 != toUInt16(1), 9223372036854775808.000000000 < toUInt16(1), 9223372036854775808.000000000 <= toUInt16(1), 9223372036854775808.000000000 > toUInt16(1), 9223372036854775808.000000000 >= toUInt16(1) , toInt16(1) = 9223372036854775808.000000000, toInt16(1) != 9223372036854775808.000000000, toInt16(1) < 9223372036854775808.000000000, toInt16(1) <= 9223372036854775808.000000000, toInt16(1) > 9223372036854775808.000000000, toInt16(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt16(1), 9223372036854775808.000000000 != toInt16(1), 9223372036854775808.000000000 < toInt16(1), 9223372036854775808.000000000 <= toInt16(1), 9223372036854775808.000000000 > toInt16(1), 9223372036854775808.000000000 >= toInt16(1) , toUInt32(1) = 9223372036854775808.000000000, toUInt32(1) != 9223372036854775808.000000000, toUInt32(1) < 9223372036854775808.000000000, toUInt32(1) <= 9223372036854775808.000000000, toUInt32(1) > 9223372036854775808.000000000, toUInt32(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt32(1), 9223372036854775808.000000000 != toUInt32(1), 9223372036854775808.000000000 < toUInt32(1), 9223372036854775808.000000000 <= toUInt32(1), 9223372036854775808.000000000 > toUInt32(1), 9223372036854775808.000000000 >= toUInt32(1) , toInt32(1) = 9223372036854775808.000000000, toInt32(1) != 9223372036854775808.000000000, toInt32(1) < 9223372036854775808.000000000, toInt32(1) <= 9223372036854775808.000000000, toInt32(1) > 9223372036854775808.000000000, toInt32(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt32(1), 9223372036854775808.000000000 != toInt32(1), 9223372036854775808.000000000 < toInt32(1), 9223372036854775808.000000000 <= toInt32(1), 9223372036854775808.000000000 > toInt32(1), 9223372036854775808.000000000 >= toInt32(1) , toUInt64(1) = 9223372036854775808.000000000, toUInt64(1) != 9223372036854775808.000000000, toUInt64(1) < 9223372036854775808.000000000, toUInt64(1) <= 9223372036854775808.000000000, toUInt64(1) > 9223372036854775808.000000000, toUInt64(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt64(1), 9223372036854775808.000000000 != toUInt64(1), 9223372036854775808.000000000 < toUInt64(1), 9223372036854775808.000000000 <= toUInt64(1), 9223372036854775808.000000000 > toUInt64(1), 9223372036854775808.000000000 >= toUInt64(1) , toInt64(1) = 9223372036854775808.000000000, toInt64(1) != 9223372036854775808.000000000, toInt64(1) < 9223372036854775808.000000000, toInt64(1) <= 9223372036854775808.000000000, toInt64(1) > 9223372036854775808.000000000, toInt64(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt64(1), 9223372036854775808.000000000 != toInt64(1), 9223372036854775808.000000000 < toInt64(1), 9223372036854775808.000000000 <= toInt64(1), 9223372036854775808.000000000 > toInt64(1), 9223372036854775808.000000000 >= toInt64(1) ;
SELECT '1', '-9223372036854775808.000000000', 1 = -9223372036854775808.000000000, 1 != -9223372036854775808.000000000, 1 < -9223372036854775808.000000000, 1 <= -9223372036854775808.000000000, 1 > -9223372036854775808.000000000, 1 >= -9223372036854775808.000000000, -9223372036854775808.000000000 = 1, -9223372036854775808.000000000 != 1, -9223372036854775808.000000000 < 1, -9223372036854775808.000000000 <= 1, -9223372036854775808.000000000 > 1, -9223372036854775808.000000000 >= 1 , toUInt8(1) = -9223372036854775808.000000000, toUInt8(1) != -9223372036854775808.000000000, toUInt8(1) < -9223372036854775808.000000000, toUInt8(1) <= -9223372036854775808.000000000, toUInt8(1) > -9223372036854775808.000000000, toUInt8(1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt8(1), -9223372036854775808.000000000 != toUInt8(1), -9223372036854775808.000000000 < toUInt8(1), -9223372036854775808.000000000 <= toUInt8(1), -9223372036854775808.000000000 > toUInt8(1), -9223372036854775808.000000000 >= toUInt8(1) , toInt8(1) = -9223372036854775808.000000000, toInt8(1) != -9223372036854775808.000000000, toInt8(1) < -9223372036854775808.000000000, toInt8(1) <= -9223372036854775808.000000000, toInt8(1) > -9223372036854775808.000000000, toInt8(1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt8(1), -9223372036854775808.000000000 != toInt8(1), -9223372036854775808.000000000 < toInt8(1), -9223372036854775808.000000000 <= toInt8(1), -9223372036854775808.000000000 > toInt8(1), -9223372036854775808.000000000 >= toInt8(1) , toUInt16(1) = -9223372036854775808.000000000, toUInt16(1) != -9223372036854775808.000000000, toUInt16(1) < -9223372036854775808.000000000, toUInt16(1) <= -9223372036854775808.000000000, toUInt16(1) > -9223372036854775808.000000000, toUInt16(1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt16(1), -9223372036854775808.000000000 != toUInt16(1), -9223372036854775808.000000000 < toUInt16(1), -9223372036854775808.000000000 <= toUInt16(1), -9223372036854775808.000000000 > toUInt16(1), -9223372036854775808.000000000 >= toUInt16(1) , toInt16(1) = -9223372036854775808.000000000, toInt16(1) != -9223372036854775808.000000000, toInt16(1) < -9223372036854775808.000000000, toInt16(1) <= -9223372036854775808.000000000, toInt16(1) > -9223372036854775808.000000000, toInt16(1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt16(1), -9223372036854775808.000000000 != toInt16(1), -9223372036854775808.000000000 < toInt16(1), -9223372036854775808.000000000 <= toInt16(1), -9223372036854775808.000000000 > toInt16(1), -9223372036854775808.000000000 >= toInt16(1) , toUInt32(1) = -9223372036854775808.000000000, toUInt32(1) != -9223372036854775808.000000000, toUInt32(1) < -9223372036854775808.000000000, toUInt32(1) <= -9223372036854775808.000000000, toUInt32(1) > -9223372036854775808.000000000, toUInt32(1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt32(1), -9223372036854775808.000000000 != toUInt32(1), -9223372036854775808.000000000 < toUInt32(1), -9223372036854775808.000000000 <= toUInt32(1), -9223372036854775808.000000000 > toUInt32(1), -9223372036854775808.000000000 >= toUInt32(1) , toInt32(1) = -9223372036854775808.000000000, toInt32(1) != -9223372036854775808.000000000, toInt32(1) < -9223372036854775808.000000000, toInt32(1) <= -9223372036854775808.000000000, toInt32(1) > -9223372036854775808.000000000, toInt32(1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt32(1), -9223372036854775808.000000000 != toInt32(1), -9223372036854775808.000000000 < toInt32(1), -9223372036854775808.000000000 <= toInt32(1), -9223372036854775808.000000000 > toInt32(1), -9223372036854775808.000000000 >= toInt32(1) , toUInt64(1) = -9223372036854775808.000000000, toUInt64(1) != -9223372036854775808.000000000, toUInt64(1) < -9223372036854775808.000000000, toUInt64(1) <= -9223372036854775808.000000000, toUInt64(1) > -9223372036854775808.000000000, toUInt64(1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt64(1), -9223372036854775808.000000000 != toUInt64(1), -9223372036854775808.000000000 < toUInt64(1), -9223372036854775808.000000000 <= toUInt64(1), -9223372036854775808.000000000 > toUInt64(1), -9223372036854775808.000000000 >= toUInt64(1) , toInt64(1) = -9223372036854775808.000000000, toInt64(1) != -9223372036854775808.000000000, toInt64(1) < -9223372036854775808.000000000, toInt64(1) <= -9223372036854775808.000000000, toInt64(1) > -9223372036854775808.000000000, toInt64(1) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toInt64(1), -9223372036854775808.000000000 != toInt64(1), -9223372036854775808.000000000 < toInt64(1), -9223372036854775808.000000000 <= toInt64(1), -9223372036854775808.000000000 > toInt64(1), -9223372036854775808.000000000 >= toInt64(1) ;
SELECT '1', '9223372036854775808.000000000', 1 = 9223372036854775808.000000000, 1 != 9223372036854775808.000000000, 1 < 9223372036854775808.000000000, 1 <= 9223372036854775808.000000000, 1 > 9223372036854775808.000000000, 1 >= 9223372036854775808.000000000, 9223372036854775808.000000000 = 1, 9223372036854775808.000000000 != 1, 9223372036854775808.000000000 < 1, 9223372036854775808.000000000 <= 1, 9223372036854775808.000000000 > 1, 9223372036854775808.000000000 >= 1 , toUInt8(1) = 9223372036854775808.000000000, toUInt8(1) != 9223372036854775808.000000000, toUInt8(1) < 9223372036854775808.000000000, toUInt8(1) <= 9223372036854775808.000000000, toUInt8(1) > 9223372036854775808.000000000, toUInt8(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt8(1), 9223372036854775808.000000000 != toUInt8(1), 9223372036854775808.000000000 < toUInt8(1), 9223372036854775808.000000000 <= toUInt8(1), 9223372036854775808.000000000 > toUInt8(1), 9223372036854775808.000000000 >= toUInt8(1) , toInt8(1) = 9223372036854775808.000000000, toInt8(1) != 9223372036854775808.000000000, toInt8(1) < 9223372036854775808.000000000, toInt8(1) <= 9223372036854775808.000000000, toInt8(1) > 9223372036854775808.000000000, toInt8(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt8(1), 9223372036854775808.000000000 != toInt8(1), 9223372036854775808.000000000 < toInt8(1), 9223372036854775808.000000000 <= toInt8(1), 9223372036854775808.000000000 > toInt8(1), 9223372036854775808.000000000 >= toInt8(1) , toUInt16(1) = 9223372036854775808.000000000, toUInt16(1) != 9223372036854775808.000000000, toUInt16(1) < 9223372036854775808.000000000, toUInt16(1) <= 9223372036854775808.000000000, toUInt16(1) > 9223372036854775808.000000000, toUInt16(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt16(1), 9223372036854775808.000000000 != toUInt16(1), 9223372036854775808.000000000 < toUInt16(1), 9223372036854775808.000000000 <= toUInt16(1), 9223372036854775808.000000000 > toUInt16(1), 9223372036854775808.000000000 >= toUInt16(1) , toInt16(1) = 9223372036854775808.000000000, toInt16(1) != 9223372036854775808.000000000, toInt16(1) < 9223372036854775808.000000000, toInt16(1) <= 9223372036854775808.000000000, toInt16(1) > 9223372036854775808.000000000, toInt16(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt16(1), 9223372036854775808.000000000 != toInt16(1), 9223372036854775808.000000000 < toInt16(1), 9223372036854775808.000000000 <= toInt16(1), 9223372036854775808.000000000 > toInt16(1), 9223372036854775808.000000000 >= toInt16(1) , toUInt32(1) = 9223372036854775808.000000000, toUInt32(1) != 9223372036854775808.000000000, toUInt32(1) < 9223372036854775808.000000000, toUInt32(1) <= 9223372036854775808.000000000, toUInt32(1) > 9223372036854775808.000000000, toUInt32(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt32(1), 9223372036854775808.000000000 != toUInt32(1), 9223372036854775808.000000000 < toUInt32(1), 9223372036854775808.000000000 <= toUInt32(1), 9223372036854775808.000000000 > toUInt32(1), 9223372036854775808.000000000 >= toUInt32(1) , toInt32(1) = 9223372036854775808.000000000, toInt32(1) != 9223372036854775808.000000000, toInt32(1) < 9223372036854775808.000000000, toInt32(1) <= 9223372036854775808.000000000, toInt32(1) > 9223372036854775808.000000000, toInt32(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt32(1), 9223372036854775808.000000000 != toInt32(1), 9223372036854775808.000000000 < toInt32(1), 9223372036854775808.000000000 <= toInt32(1), 9223372036854775808.000000000 > toInt32(1), 9223372036854775808.000000000 >= toInt32(1) , toUInt64(1) = 9223372036854775808.000000000, toUInt64(1) != 9223372036854775808.000000000, toUInt64(1) < 9223372036854775808.000000000, toUInt64(1) <= 9223372036854775808.000000000, toUInt64(1) > 9223372036854775808.000000000, toUInt64(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt64(1), 9223372036854775808.000000000 != toUInt64(1), 9223372036854775808.000000000 < toUInt64(1), 9223372036854775808.000000000 <= toUInt64(1), 9223372036854775808.000000000 > toUInt64(1), 9223372036854775808.000000000 >= toUInt64(1) , toInt64(1) = 9223372036854775808.000000000, toInt64(1) != 9223372036854775808.000000000, toInt64(1) < 9223372036854775808.000000000, toInt64(1) <= 9223372036854775808.000000000, toInt64(1) > 9223372036854775808.000000000, toInt64(1) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toInt64(1), 9223372036854775808.000000000 != toInt64(1), 9223372036854775808.000000000 < toInt64(1), 9223372036854775808.000000000 <= toInt64(1), 9223372036854775808.000000000 > toInt64(1), 9223372036854775808.000000000 >= toInt64(1) ;
SELECT '1', '2251799813685248.000000000', 1 = 2251799813685248.000000000, 1 != 2251799813685248.000000000, 1 < 2251799813685248.000000000, 1 <= 2251799813685248.000000000, 1 > 2251799813685248.000000000, 1 >= 2251799813685248.000000000, 2251799813685248.000000000 = 1, 2251799813685248.000000000 != 1, 2251799813685248.000000000 < 1, 2251799813685248.000000000 <= 1, 2251799813685248.000000000 > 1, 2251799813685248.000000000 >= 1 , toUInt8(1) = 2251799813685248.000000000, toUInt8(1) != 2251799813685248.000000000, toUInt8(1) < 2251799813685248.000000000, toUInt8(1) <= 2251799813685248.000000000, toUInt8(1) > 2251799813685248.000000000, toUInt8(1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt8(1), 2251799813685248.000000000 != toUInt8(1), 2251799813685248.000000000 < toUInt8(1), 2251799813685248.000000000 <= toUInt8(1), 2251799813685248.000000000 > toUInt8(1), 2251799813685248.000000000 >= toUInt8(1) , toInt8(1) = 2251799813685248.000000000, toInt8(1) != 2251799813685248.000000000, toInt8(1) < 2251799813685248.000000000, toInt8(1) <= 2251799813685248.000000000, toInt8(1) > 2251799813685248.000000000, toInt8(1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt8(1), 2251799813685248.000000000 != toInt8(1), 2251799813685248.000000000 < toInt8(1), 2251799813685248.000000000 <= toInt8(1), 2251799813685248.000000000 > toInt8(1), 2251799813685248.000000000 >= toInt8(1) , toUInt16(1) = 2251799813685248.000000000, toUInt16(1) != 2251799813685248.000000000, toUInt16(1) < 2251799813685248.000000000, toUInt16(1) <= 2251799813685248.000000000, toUInt16(1) > 2251799813685248.000000000, toUInt16(1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt16(1), 2251799813685248.000000000 != toUInt16(1), 2251799813685248.000000000 < toUInt16(1), 2251799813685248.000000000 <= toUInt16(1), 2251799813685248.000000000 > toUInt16(1), 2251799813685248.000000000 >= toUInt16(1) , toInt16(1) = 2251799813685248.000000000, toInt16(1) != 2251799813685248.000000000, toInt16(1) < 2251799813685248.000000000, toInt16(1) <= 2251799813685248.000000000, toInt16(1) > 2251799813685248.000000000, toInt16(1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt16(1), 2251799813685248.000000000 != toInt16(1), 2251799813685248.000000000 < toInt16(1), 2251799813685248.000000000 <= toInt16(1), 2251799813685248.000000000 > toInt16(1), 2251799813685248.000000000 >= toInt16(1) , toUInt32(1) = 2251799813685248.000000000, toUInt32(1) != 2251799813685248.000000000, toUInt32(1) < 2251799813685248.000000000, toUInt32(1) <= 2251799813685248.000000000, toUInt32(1) > 2251799813685248.000000000, toUInt32(1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt32(1), 2251799813685248.000000000 != toUInt32(1), 2251799813685248.000000000 < toUInt32(1), 2251799813685248.000000000 <= toUInt32(1), 2251799813685248.000000000 > toUInt32(1), 2251799813685248.000000000 >= toUInt32(1) , toInt32(1) = 2251799813685248.000000000, toInt32(1) != 2251799813685248.000000000, toInt32(1) < 2251799813685248.000000000, toInt32(1) <= 2251799813685248.000000000, toInt32(1) > 2251799813685248.000000000, toInt32(1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt32(1), 2251799813685248.000000000 != toInt32(1), 2251799813685248.000000000 < toInt32(1), 2251799813685248.000000000 <= toInt32(1), 2251799813685248.000000000 > toInt32(1), 2251799813685248.000000000 >= toInt32(1) , toUInt64(1) = 2251799813685248.000000000, toUInt64(1) != 2251799813685248.000000000, toUInt64(1) < 2251799813685248.000000000, toUInt64(1) <= 2251799813685248.000000000, toUInt64(1) > 2251799813685248.000000000, toUInt64(1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt64(1), 2251799813685248.000000000 != toUInt64(1), 2251799813685248.000000000 < toUInt64(1), 2251799813685248.000000000 <= toUInt64(1), 2251799813685248.000000000 > toUInt64(1), 2251799813685248.000000000 >= toUInt64(1) , toInt64(1) = 2251799813685248.000000000, toInt64(1) != 2251799813685248.000000000, toInt64(1) < 2251799813685248.000000000, toInt64(1) <= 2251799813685248.000000000, toInt64(1) > 2251799813685248.000000000, toInt64(1) >= 2251799813685248.000000000, 2251799813685248.000000000 = toInt64(1), 2251799813685248.000000000 != toInt64(1), 2251799813685248.000000000 < toInt64(1), 2251799813685248.000000000 <= toInt64(1), 2251799813685248.000000000 > toInt64(1), 2251799813685248.000000000 >= toInt64(1) ;
SELECT '1', '4503599627370496.000000000', 1 = 4503599627370496.000000000, 1 != 4503599627370496.000000000, 1 < 4503599627370496.000000000, 1 <= 4503599627370496.000000000, 1 > 4503599627370496.000000000, 1 >= 4503599627370496.000000000, 4503599627370496.000000000 = 1, 4503599627370496.000000000 != 1, 4503599627370496.000000000 < 1, 4503599627370496.000000000 <= 1, 4503599627370496.000000000 > 1, 4503599627370496.000000000 >= 1 , toUInt8(1) = 4503599627370496.000000000, toUInt8(1) != 4503599627370496.000000000, toUInt8(1) < 4503599627370496.000000000, toUInt8(1) <= 4503599627370496.000000000, toUInt8(1) > 4503599627370496.000000000, toUInt8(1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt8(1), 4503599627370496.000000000 != toUInt8(1), 4503599627370496.000000000 < toUInt8(1), 4503599627370496.000000000 <= toUInt8(1), 4503599627370496.000000000 > toUInt8(1), 4503599627370496.000000000 >= toUInt8(1) , toInt8(1) = 4503599627370496.000000000, toInt8(1) != 4503599627370496.000000000, toInt8(1) < 4503599627370496.000000000, toInt8(1) <= 4503599627370496.000000000, toInt8(1) > 4503599627370496.000000000, toInt8(1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt8(1), 4503599627370496.000000000 != toInt8(1), 4503599627370496.000000000 < toInt8(1), 4503599627370496.000000000 <= toInt8(1), 4503599627370496.000000000 > toInt8(1), 4503599627370496.000000000 >= toInt8(1) , toUInt16(1) = 4503599627370496.000000000, toUInt16(1) != 4503599627370496.000000000, toUInt16(1) < 4503599627370496.000000000, toUInt16(1) <= 4503599627370496.000000000, toUInt16(1) > 4503599627370496.000000000, toUInt16(1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt16(1), 4503599627370496.000000000 != toUInt16(1), 4503599627370496.000000000 < toUInt16(1), 4503599627370496.000000000 <= toUInt16(1), 4503599627370496.000000000 > toUInt16(1), 4503599627370496.000000000 >= toUInt16(1) , toInt16(1) = 4503599627370496.000000000, toInt16(1) != 4503599627370496.000000000, toInt16(1) < 4503599627370496.000000000, toInt16(1) <= 4503599627370496.000000000, toInt16(1) > 4503599627370496.000000000, toInt16(1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt16(1), 4503599627370496.000000000 != toInt16(1), 4503599627370496.000000000 < toInt16(1), 4503599627370496.000000000 <= toInt16(1), 4503599627370496.000000000 > toInt16(1), 4503599627370496.000000000 >= toInt16(1) , toUInt32(1) = 4503599627370496.000000000, toUInt32(1) != 4503599627370496.000000000, toUInt32(1) < 4503599627370496.000000000, toUInt32(1) <= 4503599627370496.000000000, toUInt32(1) > 4503599627370496.000000000, toUInt32(1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt32(1), 4503599627370496.000000000 != toUInt32(1), 4503599627370496.000000000 < toUInt32(1), 4503599627370496.000000000 <= toUInt32(1), 4503599627370496.000000000 > toUInt32(1), 4503599627370496.000000000 >= toUInt32(1) , toInt32(1) = 4503599627370496.000000000, toInt32(1) != 4503599627370496.000000000, toInt32(1) < 4503599627370496.000000000, toInt32(1) <= 4503599627370496.000000000, toInt32(1) > 4503599627370496.000000000, toInt32(1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt32(1), 4503599627370496.000000000 != toInt32(1), 4503599627370496.000000000 < toInt32(1), 4503599627370496.000000000 <= toInt32(1), 4503599627370496.000000000 > toInt32(1), 4503599627370496.000000000 >= toInt32(1) , toUInt64(1) = 4503599627370496.000000000, toUInt64(1) != 4503599627370496.000000000, toUInt64(1) < 4503599627370496.000000000, toUInt64(1) <= 4503599627370496.000000000, toUInt64(1) > 4503599627370496.000000000, toUInt64(1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt64(1), 4503599627370496.000000000 != toUInt64(1), 4503599627370496.000000000 < toUInt64(1), 4503599627370496.000000000 <= toUInt64(1), 4503599627370496.000000000 > toUInt64(1), 4503599627370496.000000000 >= toUInt64(1) , toInt64(1) = 4503599627370496.000000000, toInt64(1) != 4503599627370496.000000000, toInt64(1) < 4503599627370496.000000000, toInt64(1) <= 4503599627370496.000000000, toInt64(1) > 4503599627370496.000000000, toInt64(1) >= 4503599627370496.000000000, 4503599627370496.000000000 = toInt64(1), 4503599627370496.000000000 != toInt64(1), 4503599627370496.000000000 < toInt64(1), 4503599627370496.000000000 <= toInt64(1), 4503599627370496.000000000 > toInt64(1), 4503599627370496.000000000 >= toInt64(1) ;
SELECT '1', '9007199254740991.000000000', 1 = 9007199254740991.000000000, 1 != 9007199254740991.000000000, 1 < 9007199254740991.000000000, 1 <= 9007199254740991.000000000, 1 > 9007199254740991.000000000, 1 >= 9007199254740991.000000000, 9007199254740991.000000000 = 1, 9007199254740991.000000000 != 1, 9007199254740991.000000000 < 1, 9007199254740991.000000000 <= 1, 9007199254740991.000000000 > 1, 9007199254740991.000000000 >= 1 , toUInt8(1) = 9007199254740991.000000000, toUInt8(1) != 9007199254740991.000000000, toUInt8(1) < 9007199254740991.000000000, toUInt8(1) <= 9007199254740991.000000000, toUInt8(1) > 9007199254740991.000000000, toUInt8(1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt8(1), 9007199254740991.000000000 != toUInt8(1), 9007199254740991.000000000 < toUInt8(1), 9007199254740991.000000000 <= toUInt8(1), 9007199254740991.000000000 > toUInt8(1), 9007199254740991.000000000 >= toUInt8(1) , toInt8(1) = 9007199254740991.000000000, toInt8(1) != 9007199254740991.000000000, toInt8(1) < 9007199254740991.000000000, toInt8(1) <= 9007199254740991.000000000, toInt8(1) > 9007199254740991.000000000, toInt8(1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt8(1), 9007199254740991.000000000 != toInt8(1), 9007199254740991.000000000 < toInt8(1), 9007199254740991.000000000 <= toInt8(1), 9007199254740991.000000000 > toInt8(1), 9007199254740991.000000000 >= toInt8(1) , toUInt16(1) = 9007199254740991.000000000, toUInt16(1) != 9007199254740991.000000000, toUInt16(1) < 9007199254740991.000000000, toUInt16(1) <= 9007199254740991.000000000, toUInt16(1) > 9007199254740991.000000000, toUInt16(1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt16(1), 9007199254740991.000000000 != toUInt16(1), 9007199254740991.000000000 < toUInt16(1), 9007199254740991.000000000 <= toUInt16(1), 9007199254740991.000000000 > toUInt16(1), 9007199254740991.000000000 >= toUInt16(1) , toInt16(1) = 9007199254740991.000000000, toInt16(1) != 9007199254740991.000000000, toInt16(1) < 9007199254740991.000000000, toInt16(1) <= 9007199254740991.000000000, toInt16(1) > 9007199254740991.000000000, toInt16(1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt16(1), 9007199254740991.000000000 != toInt16(1), 9007199254740991.000000000 < toInt16(1), 9007199254740991.000000000 <= toInt16(1), 9007199254740991.000000000 > toInt16(1), 9007199254740991.000000000 >= toInt16(1) , toUInt32(1) = 9007199254740991.000000000, toUInt32(1) != 9007199254740991.000000000, toUInt32(1) < 9007199254740991.000000000, toUInt32(1) <= 9007199254740991.000000000, toUInt32(1) > 9007199254740991.000000000, toUInt32(1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt32(1), 9007199254740991.000000000 != toUInt32(1), 9007199254740991.000000000 < toUInt32(1), 9007199254740991.000000000 <= toUInt32(1), 9007199254740991.000000000 > toUInt32(1), 9007199254740991.000000000 >= toUInt32(1) , toInt32(1) = 9007199254740991.000000000, toInt32(1) != 9007199254740991.000000000, toInt32(1) < 9007199254740991.000000000, toInt32(1) <= 9007199254740991.000000000, toInt32(1) > 9007199254740991.000000000, toInt32(1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt32(1), 9007199254740991.000000000 != toInt32(1), 9007199254740991.000000000 < toInt32(1), 9007199254740991.000000000 <= toInt32(1), 9007199254740991.000000000 > toInt32(1), 9007199254740991.000000000 >= toInt32(1) , toUInt64(1) = 9007199254740991.000000000, toUInt64(1) != 9007199254740991.000000000, toUInt64(1) < 9007199254740991.000000000, toUInt64(1) <= 9007199254740991.000000000, toUInt64(1) > 9007199254740991.000000000, toUInt64(1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt64(1), 9007199254740991.000000000 != toUInt64(1), 9007199254740991.000000000 < toUInt64(1), 9007199254740991.000000000 <= toUInt64(1), 9007199254740991.000000000 > toUInt64(1), 9007199254740991.000000000 >= toUInt64(1) , toInt64(1) = 9007199254740991.000000000, toInt64(1) != 9007199254740991.000000000, toInt64(1) < 9007199254740991.000000000, toInt64(1) <= 9007199254740991.000000000, toInt64(1) > 9007199254740991.000000000, toInt64(1) >= 9007199254740991.000000000, 9007199254740991.000000000 = toInt64(1), 9007199254740991.000000000 != toInt64(1), 9007199254740991.000000000 < toInt64(1), 9007199254740991.000000000 <= toInt64(1), 9007199254740991.000000000 > toInt64(1), 9007199254740991.000000000 >= toInt64(1) ;
SELECT '1', '9007199254740992.000000000', 1 = 9007199254740992.000000000, 1 != 9007199254740992.000000000, 1 < 9007199254740992.000000000, 1 <= 9007199254740992.000000000, 1 > 9007199254740992.000000000, 1 >= 9007199254740992.000000000, 9007199254740992.000000000 = 1, 9007199254740992.000000000 != 1, 9007199254740992.000000000 < 1, 9007199254740992.000000000 <= 1, 9007199254740992.000000000 > 1, 9007199254740992.000000000 >= 1 , toUInt8(1) = 9007199254740992.000000000, toUInt8(1) != 9007199254740992.000000000, toUInt8(1) < 9007199254740992.000000000, toUInt8(1) <= 9007199254740992.000000000, toUInt8(1) > 9007199254740992.000000000, toUInt8(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt8(1), 9007199254740992.000000000 != toUInt8(1), 9007199254740992.000000000 < toUInt8(1), 9007199254740992.000000000 <= toUInt8(1), 9007199254740992.000000000 > toUInt8(1), 9007199254740992.000000000 >= toUInt8(1) , toInt8(1) = 9007199254740992.000000000, toInt8(1) != 9007199254740992.000000000, toInt8(1) < 9007199254740992.000000000, toInt8(1) <= 9007199254740992.000000000, toInt8(1) > 9007199254740992.000000000, toInt8(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(1), 9007199254740992.000000000 != toInt8(1), 9007199254740992.000000000 < toInt8(1), 9007199254740992.000000000 <= toInt8(1), 9007199254740992.000000000 > toInt8(1), 9007199254740992.000000000 >= toInt8(1) , toUInt16(1) = 9007199254740992.000000000, toUInt16(1) != 9007199254740992.000000000, toUInt16(1) < 9007199254740992.000000000, toUInt16(1) <= 9007199254740992.000000000, toUInt16(1) > 9007199254740992.000000000, toUInt16(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt16(1), 9007199254740992.000000000 != toUInt16(1), 9007199254740992.000000000 < toUInt16(1), 9007199254740992.000000000 <= toUInt16(1), 9007199254740992.000000000 > toUInt16(1), 9007199254740992.000000000 >= toUInt16(1) , toInt16(1) = 9007199254740992.000000000, toInt16(1) != 9007199254740992.000000000, toInt16(1) < 9007199254740992.000000000, toInt16(1) <= 9007199254740992.000000000, toInt16(1) > 9007199254740992.000000000, toInt16(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(1), 9007199254740992.000000000 != toInt16(1), 9007199254740992.000000000 < toInt16(1), 9007199254740992.000000000 <= toInt16(1), 9007199254740992.000000000 > toInt16(1), 9007199254740992.000000000 >= toInt16(1) , toUInt32(1) = 9007199254740992.000000000, toUInt32(1) != 9007199254740992.000000000, toUInt32(1) < 9007199254740992.000000000, toUInt32(1) <= 9007199254740992.000000000, toUInt32(1) > 9007199254740992.000000000, toUInt32(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt32(1), 9007199254740992.000000000 != toUInt32(1), 9007199254740992.000000000 < toUInt32(1), 9007199254740992.000000000 <= toUInt32(1), 9007199254740992.000000000 > toUInt32(1), 9007199254740992.000000000 >= toUInt32(1) , toInt32(1) = 9007199254740992.000000000, toInt32(1) != 9007199254740992.000000000, toInt32(1) < 9007199254740992.000000000, toInt32(1) <= 9007199254740992.000000000, toInt32(1) > 9007199254740992.000000000, toInt32(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(1), 9007199254740992.000000000 != toInt32(1), 9007199254740992.000000000 < toInt32(1), 9007199254740992.000000000 <= toInt32(1), 9007199254740992.000000000 > toInt32(1), 9007199254740992.000000000 >= toInt32(1) , toUInt64(1) = 9007199254740992.000000000, toUInt64(1) != 9007199254740992.000000000, toUInt64(1) < 9007199254740992.000000000, toUInt64(1) <= 9007199254740992.000000000, toUInt64(1) > 9007199254740992.000000000, toUInt64(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(1), 9007199254740992.000000000 != toUInt64(1), 9007199254740992.000000000 < toUInt64(1), 9007199254740992.000000000 <= toUInt64(1), 9007199254740992.000000000 > toUInt64(1), 9007199254740992.000000000 >= toUInt64(1) , toInt64(1) = 9007199254740992.000000000, toInt64(1) != 9007199254740992.000000000, toInt64(1) < 9007199254740992.000000000, toInt64(1) <= 9007199254740992.000000000, toInt64(1) > 9007199254740992.000000000, toInt64(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(1), 9007199254740992.000000000 != toInt64(1), 9007199254740992.000000000 < toInt64(1), 9007199254740992.000000000 <= toInt64(1), 9007199254740992.000000000 > toInt64(1), 9007199254740992.000000000 >= toInt64(1) ;
SELECT '1', '9007199254740992.000000000', 1 = 9007199254740992.000000000, 1 != 9007199254740992.000000000, 1 < 9007199254740992.000000000, 1 <= 9007199254740992.000000000, 1 > 9007199254740992.000000000, 1 >= 9007199254740992.000000000, 9007199254740992.000000000 = 1, 9007199254740992.000000000 != 1, 9007199254740992.000000000 < 1, 9007199254740992.000000000 <= 1, 9007199254740992.000000000 > 1, 9007199254740992.000000000 >= 1 , toUInt8(1) = 9007199254740992.000000000, toUInt8(1) != 9007199254740992.000000000, toUInt8(1) < 9007199254740992.000000000, toUInt8(1) <= 9007199254740992.000000000, toUInt8(1) > 9007199254740992.000000000, toUInt8(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt8(1), 9007199254740992.000000000 != toUInt8(1), 9007199254740992.000000000 < toUInt8(1), 9007199254740992.000000000 <= toUInt8(1), 9007199254740992.000000000 > toUInt8(1), 9007199254740992.000000000 >= toUInt8(1) , toInt8(1) = 9007199254740992.000000000, toInt8(1) != 9007199254740992.000000000, toInt8(1) < 9007199254740992.000000000, toInt8(1) <= 9007199254740992.000000000, toInt8(1) > 9007199254740992.000000000, toInt8(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(1), 9007199254740992.000000000 != toInt8(1), 9007199254740992.000000000 < toInt8(1), 9007199254740992.000000000 <= toInt8(1), 9007199254740992.000000000 > toInt8(1), 9007199254740992.000000000 >= toInt8(1) , toUInt16(1) = 9007199254740992.000000000, toUInt16(1) != 9007199254740992.000000000, toUInt16(1) < 9007199254740992.000000000, toUInt16(1) <= 9007199254740992.000000000, toUInt16(1) > 9007199254740992.000000000, toUInt16(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt16(1), 9007199254740992.000000000 != toUInt16(1), 9007199254740992.000000000 < toUInt16(1), 9007199254740992.000000000 <= toUInt16(1), 9007199254740992.000000000 > toUInt16(1), 9007199254740992.000000000 >= toUInt16(1) , toInt16(1) = 9007199254740992.000000000, toInt16(1) != 9007199254740992.000000000, toInt16(1) < 9007199254740992.000000000, toInt16(1) <= 9007199254740992.000000000, toInt16(1) > 9007199254740992.000000000, toInt16(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(1), 9007199254740992.000000000 != toInt16(1), 9007199254740992.000000000 < toInt16(1), 9007199254740992.000000000 <= toInt16(1), 9007199254740992.000000000 > toInt16(1), 9007199254740992.000000000 >= toInt16(1) , toUInt32(1) = 9007199254740992.000000000, toUInt32(1) != 9007199254740992.000000000, toUInt32(1) < 9007199254740992.000000000, toUInt32(1) <= 9007199254740992.000000000, toUInt32(1) > 9007199254740992.000000000, toUInt32(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt32(1), 9007199254740992.000000000 != toUInt32(1), 9007199254740992.000000000 < toUInt32(1), 9007199254740992.000000000 <= toUInt32(1), 9007199254740992.000000000 > toUInt32(1), 9007199254740992.000000000 >= toUInt32(1) , toInt32(1) = 9007199254740992.000000000, toInt32(1) != 9007199254740992.000000000, toInt32(1) < 9007199254740992.000000000, toInt32(1) <= 9007199254740992.000000000, toInt32(1) > 9007199254740992.000000000, toInt32(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(1), 9007199254740992.000000000 != toInt32(1), 9007199254740992.000000000 < toInt32(1), 9007199254740992.000000000 <= toInt32(1), 9007199254740992.000000000 > toInt32(1), 9007199254740992.000000000 >= toInt32(1) , toUInt64(1) = 9007199254740992.000000000, toUInt64(1) != 9007199254740992.000000000, toUInt64(1) < 9007199254740992.000000000, toUInt64(1) <= 9007199254740992.000000000, toUInt64(1) > 9007199254740992.000000000, toUInt64(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(1), 9007199254740992.000000000 != toUInt64(1), 9007199254740992.000000000 < toUInt64(1), 9007199254740992.000000000 <= toUInt64(1), 9007199254740992.000000000 > toUInt64(1), 9007199254740992.000000000 >= toUInt64(1) , toInt64(1) = 9007199254740992.000000000, toInt64(1) != 9007199254740992.000000000, toInt64(1) < 9007199254740992.000000000, toInt64(1) <= 9007199254740992.000000000, toInt64(1) > 9007199254740992.000000000, toInt64(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(1), 9007199254740992.000000000 != toInt64(1), 9007199254740992.000000000 < toInt64(1), 9007199254740992.000000000 <= toInt64(1), 9007199254740992.000000000 > toInt64(1), 9007199254740992.000000000 >= toInt64(1) ;
SELECT '1', '9007199254740994.000000000', 1 = 9007199254740994.000000000, 1 != 9007199254740994.000000000, 1 < 9007199254740994.000000000, 1 <= 9007199254740994.000000000, 1 > 9007199254740994.000000000, 1 >= 9007199254740994.000000000, 9007199254740994.000000000 = 1, 9007199254740994.000000000 != 1, 9007199254740994.000000000 < 1, 9007199254740994.000000000 <= 1, 9007199254740994.000000000 > 1, 9007199254740994.000000000 >= 1 , toUInt8(1) = 9007199254740994.000000000, toUInt8(1) != 9007199254740994.000000000, toUInt8(1) < 9007199254740994.000000000, toUInt8(1) <= 9007199254740994.000000000, toUInt8(1) > 9007199254740994.000000000, toUInt8(1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt8(1), 9007199254740994.000000000 != toUInt8(1), 9007199254740994.000000000 < toUInt8(1), 9007199254740994.000000000 <= toUInt8(1), 9007199254740994.000000000 > toUInt8(1), 9007199254740994.000000000 >= toUInt8(1) , toInt8(1) = 9007199254740994.000000000, toInt8(1) != 9007199254740994.000000000, toInt8(1) < 9007199254740994.000000000, toInt8(1) <= 9007199254740994.000000000, toInt8(1) > 9007199254740994.000000000, toInt8(1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt8(1), 9007199254740994.000000000 != toInt8(1), 9007199254740994.000000000 < toInt8(1), 9007199254740994.000000000 <= toInt8(1), 9007199254740994.000000000 > toInt8(1), 9007199254740994.000000000 >= toInt8(1) , toUInt16(1) = 9007199254740994.000000000, toUInt16(1) != 9007199254740994.000000000, toUInt16(1) < 9007199254740994.000000000, toUInt16(1) <= 9007199254740994.000000000, toUInt16(1) > 9007199254740994.000000000, toUInt16(1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt16(1), 9007199254740994.000000000 != toUInt16(1), 9007199254740994.000000000 < toUInt16(1), 9007199254740994.000000000 <= toUInt16(1), 9007199254740994.000000000 > toUInt16(1), 9007199254740994.000000000 >= toUInt16(1) , toInt16(1) = 9007199254740994.000000000, toInt16(1) != 9007199254740994.000000000, toInt16(1) < 9007199254740994.000000000, toInt16(1) <= 9007199254740994.000000000, toInt16(1) > 9007199254740994.000000000, toInt16(1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt16(1), 9007199254740994.000000000 != toInt16(1), 9007199254740994.000000000 < toInt16(1), 9007199254740994.000000000 <= toInt16(1), 9007199254740994.000000000 > toInt16(1), 9007199254740994.000000000 >= toInt16(1) , toUInt32(1) = 9007199254740994.000000000, toUInt32(1) != 9007199254740994.000000000, toUInt32(1) < 9007199254740994.000000000, toUInt32(1) <= 9007199254740994.000000000, toUInt32(1) > 9007199254740994.000000000, toUInt32(1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt32(1), 9007199254740994.000000000 != toUInt32(1), 9007199254740994.000000000 < toUInt32(1), 9007199254740994.000000000 <= toUInt32(1), 9007199254740994.000000000 > toUInt32(1), 9007199254740994.000000000 >= toUInt32(1) , toInt32(1) = 9007199254740994.000000000, toInt32(1) != 9007199254740994.000000000, toInt32(1) < 9007199254740994.000000000, toInt32(1) <= 9007199254740994.000000000, toInt32(1) > 9007199254740994.000000000, toInt32(1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt32(1), 9007199254740994.000000000 != toInt32(1), 9007199254740994.000000000 < toInt32(1), 9007199254740994.000000000 <= toInt32(1), 9007199254740994.000000000 > toInt32(1), 9007199254740994.000000000 >= toInt32(1) , toUInt64(1) = 9007199254740994.000000000, toUInt64(1) != 9007199254740994.000000000, toUInt64(1) < 9007199254740994.000000000, toUInt64(1) <= 9007199254740994.000000000, toUInt64(1) > 9007199254740994.000000000, toUInt64(1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt64(1), 9007199254740994.000000000 != toUInt64(1), 9007199254740994.000000000 < toUInt64(1), 9007199254740994.000000000 <= toUInt64(1), 9007199254740994.000000000 > toUInt64(1), 9007199254740994.000000000 >= toUInt64(1) , toInt64(1) = 9007199254740994.000000000, toInt64(1) != 9007199254740994.000000000, toInt64(1) < 9007199254740994.000000000, toInt64(1) <= 9007199254740994.000000000, toInt64(1) > 9007199254740994.000000000, toInt64(1) >= 9007199254740994.000000000, 9007199254740994.000000000 = toInt64(1), 9007199254740994.000000000 != toInt64(1), 9007199254740994.000000000 < toInt64(1), 9007199254740994.000000000 <= toInt64(1), 9007199254740994.000000000 > toInt64(1), 9007199254740994.000000000 >= toInt64(1) ;
SELECT '1', '-9007199254740991.000000000', 1 = -9007199254740991.000000000, 1 != -9007199254740991.000000000, 1 < -9007199254740991.000000000, 1 <= -9007199254740991.000000000, 1 > -9007199254740991.000000000, 1 >= -9007199254740991.000000000, -9007199254740991.000000000 = 1, -9007199254740991.000000000 != 1, -9007199254740991.000000000 < 1, -9007199254740991.000000000 <= 1, -9007199254740991.000000000 > 1, -9007199254740991.000000000 >= 1 , toUInt8(1) = -9007199254740991.000000000, toUInt8(1) != -9007199254740991.000000000, toUInt8(1) < -9007199254740991.000000000, toUInt8(1) <= -9007199254740991.000000000, toUInt8(1) > -9007199254740991.000000000, toUInt8(1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt8(1), -9007199254740991.000000000 != toUInt8(1), -9007199254740991.000000000 < toUInt8(1), -9007199254740991.000000000 <= toUInt8(1), -9007199254740991.000000000 > toUInt8(1), -9007199254740991.000000000 >= toUInt8(1) , toInt8(1) = -9007199254740991.000000000, toInt8(1) != -9007199254740991.000000000, toInt8(1) < -9007199254740991.000000000, toInt8(1) <= -9007199254740991.000000000, toInt8(1) > -9007199254740991.000000000, toInt8(1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt8(1), -9007199254740991.000000000 != toInt8(1), -9007199254740991.000000000 < toInt8(1), -9007199254740991.000000000 <= toInt8(1), -9007199254740991.000000000 > toInt8(1), -9007199254740991.000000000 >= toInt8(1) , toUInt16(1) = -9007199254740991.000000000, toUInt16(1) != -9007199254740991.000000000, toUInt16(1) < -9007199254740991.000000000, toUInt16(1) <= -9007199254740991.000000000, toUInt16(1) > -9007199254740991.000000000, toUInt16(1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt16(1), -9007199254740991.000000000 != toUInt16(1), -9007199254740991.000000000 < toUInt16(1), -9007199254740991.000000000 <= toUInt16(1), -9007199254740991.000000000 > toUInt16(1), -9007199254740991.000000000 >= toUInt16(1) , toInt16(1) = -9007199254740991.000000000, toInt16(1) != -9007199254740991.000000000, toInt16(1) < -9007199254740991.000000000, toInt16(1) <= -9007199254740991.000000000, toInt16(1) > -9007199254740991.000000000, toInt16(1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt16(1), -9007199254740991.000000000 != toInt16(1), -9007199254740991.000000000 < toInt16(1), -9007199254740991.000000000 <= toInt16(1), -9007199254740991.000000000 > toInt16(1), -9007199254740991.000000000 >= toInt16(1) , toUInt32(1) = -9007199254740991.000000000, toUInt32(1) != -9007199254740991.000000000, toUInt32(1) < -9007199254740991.000000000, toUInt32(1) <= -9007199254740991.000000000, toUInt32(1) > -9007199254740991.000000000, toUInt32(1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt32(1), -9007199254740991.000000000 != toUInt32(1), -9007199254740991.000000000 < toUInt32(1), -9007199254740991.000000000 <= toUInt32(1), -9007199254740991.000000000 > toUInt32(1), -9007199254740991.000000000 >= toUInt32(1) , toInt32(1) = -9007199254740991.000000000, toInt32(1) != -9007199254740991.000000000, toInt32(1) < -9007199254740991.000000000, toInt32(1) <= -9007199254740991.000000000, toInt32(1) > -9007199254740991.000000000, toInt32(1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt32(1), -9007199254740991.000000000 != toInt32(1), -9007199254740991.000000000 < toInt32(1), -9007199254740991.000000000 <= toInt32(1), -9007199254740991.000000000 > toInt32(1), -9007199254740991.000000000 >= toInt32(1) , toUInt64(1) = -9007199254740991.000000000, toUInt64(1) != -9007199254740991.000000000, toUInt64(1) < -9007199254740991.000000000, toUInt64(1) <= -9007199254740991.000000000, toUInt64(1) > -9007199254740991.000000000, toUInt64(1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt64(1), -9007199254740991.000000000 != toUInt64(1), -9007199254740991.000000000 < toUInt64(1), -9007199254740991.000000000 <= toUInt64(1), -9007199254740991.000000000 > toUInt64(1), -9007199254740991.000000000 >= toUInt64(1) , toInt64(1) = -9007199254740991.000000000, toInt64(1) != -9007199254740991.000000000, toInt64(1) < -9007199254740991.000000000, toInt64(1) <= -9007199254740991.000000000, toInt64(1) > -9007199254740991.000000000, toInt64(1) >= -9007199254740991.000000000, -9007199254740991.000000000 = toInt64(1), -9007199254740991.000000000 != toInt64(1), -9007199254740991.000000000 < toInt64(1), -9007199254740991.000000000 <= toInt64(1), -9007199254740991.000000000 > toInt64(1), -9007199254740991.000000000 >= toInt64(1) ;
SELECT '1', '-9007199254740992.000000000', 1 = -9007199254740992.000000000, 1 != -9007199254740992.000000000, 1 < -9007199254740992.000000000, 1 <= -9007199254740992.000000000, 1 > -9007199254740992.000000000, 1 >= -9007199254740992.000000000, -9007199254740992.000000000 = 1, -9007199254740992.000000000 != 1, -9007199254740992.000000000 < 1, -9007199254740992.000000000 <= 1, -9007199254740992.000000000 > 1, -9007199254740992.000000000 >= 1 , toUInt8(1) = -9007199254740992.000000000, toUInt8(1) != -9007199254740992.000000000, toUInt8(1) < -9007199254740992.000000000, toUInt8(1) <= -9007199254740992.000000000, toUInt8(1) > -9007199254740992.000000000, toUInt8(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt8(1), -9007199254740992.000000000 != toUInt8(1), -9007199254740992.000000000 < toUInt8(1), -9007199254740992.000000000 <= toUInt8(1), -9007199254740992.000000000 > toUInt8(1), -9007199254740992.000000000 >= toUInt8(1) , toInt8(1) = -9007199254740992.000000000, toInt8(1) != -9007199254740992.000000000, toInt8(1) < -9007199254740992.000000000, toInt8(1) <= -9007199254740992.000000000, toInt8(1) > -9007199254740992.000000000, toInt8(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt8(1), -9007199254740992.000000000 != toInt8(1), -9007199254740992.000000000 < toInt8(1), -9007199254740992.000000000 <= toInt8(1), -9007199254740992.000000000 > toInt8(1), -9007199254740992.000000000 >= toInt8(1) , toUInt16(1) = -9007199254740992.000000000, toUInt16(1) != -9007199254740992.000000000, toUInt16(1) < -9007199254740992.000000000, toUInt16(1) <= -9007199254740992.000000000, toUInt16(1) > -9007199254740992.000000000, toUInt16(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt16(1), -9007199254740992.000000000 != toUInt16(1), -9007199254740992.000000000 < toUInt16(1), -9007199254740992.000000000 <= toUInt16(1), -9007199254740992.000000000 > toUInt16(1), -9007199254740992.000000000 >= toUInt16(1) , toInt16(1) = -9007199254740992.000000000, toInt16(1) != -9007199254740992.000000000, toInt16(1) < -9007199254740992.000000000, toInt16(1) <= -9007199254740992.000000000, toInt16(1) > -9007199254740992.000000000, toInt16(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt16(1), -9007199254740992.000000000 != toInt16(1), -9007199254740992.000000000 < toInt16(1), -9007199254740992.000000000 <= toInt16(1), -9007199254740992.000000000 > toInt16(1), -9007199254740992.000000000 >= toInt16(1) , toUInt32(1) = -9007199254740992.000000000, toUInt32(1) != -9007199254740992.000000000, toUInt32(1) < -9007199254740992.000000000, toUInt32(1) <= -9007199254740992.000000000, toUInt32(1) > -9007199254740992.000000000, toUInt32(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt32(1), -9007199254740992.000000000 != toUInt32(1), -9007199254740992.000000000 < toUInt32(1), -9007199254740992.000000000 <= toUInt32(1), -9007199254740992.000000000 > toUInt32(1), -9007199254740992.000000000 >= toUInt32(1) , toInt32(1) = -9007199254740992.000000000, toInt32(1) != -9007199254740992.000000000, toInt32(1) < -9007199254740992.000000000, toInt32(1) <= -9007199254740992.000000000, toInt32(1) > -9007199254740992.000000000, toInt32(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt32(1), -9007199254740992.000000000 != toInt32(1), -9007199254740992.000000000 < toInt32(1), -9007199254740992.000000000 <= toInt32(1), -9007199254740992.000000000 > toInt32(1), -9007199254740992.000000000 >= toInt32(1) , toUInt64(1) = -9007199254740992.000000000, toUInt64(1) != -9007199254740992.000000000, toUInt64(1) < -9007199254740992.000000000, toUInt64(1) <= -9007199254740992.000000000, toUInt64(1) > -9007199254740992.000000000, toUInt64(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt64(1), -9007199254740992.000000000 != toUInt64(1), -9007199254740992.000000000 < toUInt64(1), -9007199254740992.000000000 <= toUInt64(1), -9007199254740992.000000000 > toUInt64(1), -9007199254740992.000000000 >= toUInt64(1) , toInt64(1) = -9007199254740992.000000000, toInt64(1) != -9007199254740992.000000000, toInt64(1) < -9007199254740992.000000000, toInt64(1) <= -9007199254740992.000000000, toInt64(1) > -9007199254740992.000000000, toInt64(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt64(1), -9007199254740992.000000000 != toInt64(1), -9007199254740992.000000000 < toInt64(1), -9007199254740992.000000000 <= toInt64(1), -9007199254740992.000000000 > toInt64(1), -9007199254740992.000000000 >= toInt64(1) ;
SELECT '1', '-9007199254740992.000000000', 1 = -9007199254740992.000000000, 1 != -9007199254740992.000000000, 1 < -9007199254740992.000000000, 1 <= -9007199254740992.000000000, 1 > -9007199254740992.000000000, 1 >= -9007199254740992.000000000, -9007199254740992.000000000 = 1, -9007199254740992.000000000 != 1, -9007199254740992.000000000 < 1, -9007199254740992.000000000 <= 1, -9007199254740992.000000000 > 1, -9007199254740992.000000000 >= 1 , toUInt8(1) = -9007199254740992.000000000, toUInt8(1) != -9007199254740992.000000000, toUInt8(1) < -9007199254740992.000000000, toUInt8(1) <= -9007199254740992.000000000, toUInt8(1) > -9007199254740992.000000000, toUInt8(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt8(1), -9007199254740992.000000000 != toUInt8(1), -9007199254740992.000000000 < toUInt8(1), -9007199254740992.000000000 <= toUInt8(1), -9007199254740992.000000000 > toUInt8(1), -9007199254740992.000000000 >= toUInt8(1) , toInt8(1) = -9007199254740992.000000000, toInt8(1) != -9007199254740992.000000000, toInt8(1) < -9007199254740992.000000000, toInt8(1) <= -9007199254740992.000000000, toInt8(1) > -9007199254740992.000000000, toInt8(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt8(1), -9007199254740992.000000000 != toInt8(1), -9007199254740992.000000000 < toInt8(1), -9007199254740992.000000000 <= toInt8(1), -9007199254740992.000000000 > toInt8(1), -9007199254740992.000000000 >= toInt8(1) , toUInt16(1) = -9007199254740992.000000000, toUInt16(1) != -9007199254740992.000000000, toUInt16(1) < -9007199254740992.000000000, toUInt16(1) <= -9007199254740992.000000000, toUInt16(1) > -9007199254740992.000000000, toUInt16(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt16(1), -9007199254740992.000000000 != toUInt16(1), -9007199254740992.000000000 < toUInt16(1), -9007199254740992.000000000 <= toUInt16(1), -9007199254740992.000000000 > toUInt16(1), -9007199254740992.000000000 >= toUInt16(1) , toInt16(1) = -9007199254740992.000000000, toInt16(1) != -9007199254740992.000000000, toInt16(1) < -9007199254740992.000000000, toInt16(1) <= -9007199254740992.000000000, toInt16(1) > -9007199254740992.000000000, toInt16(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt16(1), -9007199254740992.000000000 != toInt16(1), -9007199254740992.000000000 < toInt16(1), -9007199254740992.000000000 <= toInt16(1), -9007199254740992.000000000 > toInt16(1), -9007199254740992.000000000 >= toInt16(1) , toUInt32(1) = -9007199254740992.000000000, toUInt32(1) != -9007199254740992.000000000, toUInt32(1) < -9007199254740992.000000000, toUInt32(1) <= -9007199254740992.000000000, toUInt32(1) > -9007199254740992.000000000, toUInt32(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt32(1), -9007199254740992.000000000 != toUInt32(1), -9007199254740992.000000000 < toUInt32(1), -9007199254740992.000000000 <= toUInt32(1), -9007199254740992.000000000 > toUInt32(1), -9007199254740992.000000000 >= toUInt32(1) , toInt32(1) = -9007199254740992.000000000, toInt32(1) != -9007199254740992.000000000, toInt32(1) < -9007199254740992.000000000, toInt32(1) <= -9007199254740992.000000000, toInt32(1) > -9007199254740992.000000000, toInt32(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt32(1), -9007199254740992.000000000 != toInt32(1), -9007199254740992.000000000 < toInt32(1), -9007199254740992.000000000 <= toInt32(1), -9007199254740992.000000000 > toInt32(1), -9007199254740992.000000000 >= toInt32(1) , toUInt64(1) = -9007199254740992.000000000, toUInt64(1) != -9007199254740992.000000000, toUInt64(1) < -9007199254740992.000000000, toUInt64(1) <= -9007199254740992.000000000, toUInt64(1) > -9007199254740992.000000000, toUInt64(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt64(1), -9007199254740992.000000000 != toUInt64(1), -9007199254740992.000000000 < toUInt64(1), -9007199254740992.000000000 <= toUInt64(1), -9007199254740992.000000000 > toUInt64(1), -9007199254740992.000000000 >= toUInt64(1) , toInt64(1) = -9007199254740992.000000000, toInt64(1) != -9007199254740992.000000000, toInt64(1) < -9007199254740992.000000000, toInt64(1) <= -9007199254740992.000000000, toInt64(1) > -9007199254740992.000000000, toInt64(1) >= -9007199254740992.000000000, -9007199254740992.000000000 = toInt64(1), -9007199254740992.000000000 != toInt64(1), -9007199254740992.000000000 < toInt64(1), -9007199254740992.000000000 <= toInt64(1), -9007199254740992.000000000 > toInt64(1), -9007199254740992.000000000 >= toInt64(1) ;
SELECT '1', '-9007199254740994.000000000', 1 = -9007199254740994.000000000, 1 != -9007199254740994.000000000, 1 < -9007199254740994.000000000, 1 <= -9007199254740994.000000000, 1 > -9007199254740994.000000000, 1 >= -9007199254740994.000000000, -9007199254740994.000000000 = 1, -9007199254740994.000000000 != 1, -9007199254740994.000000000 < 1, -9007199254740994.000000000 <= 1, -9007199254740994.000000000 > 1, -9007199254740994.000000000 >= 1 , toUInt8(1) = -9007199254740994.000000000, toUInt8(1) != -9007199254740994.000000000, toUInt8(1) < -9007199254740994.000000000, toUInt8(1) <= -9007199254740994.000000000, toUInt8(1) > -9007199254740994.000000000, toUInt8(1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt8(1), -9007199254740994.000000000 != toUInt8(1), -9007199254740994.000000000 < toUInt8(1), -9007199254740994.000000000 <= toUInt8(1), -9007199254740994.000000000 > toUInt8(1), -9007199254740994.000000000 >= toUInt8(1) , toInt8(1) = -9007199254740994.000000000, toInt8(1) != -9007199254740994.000000000, toInt8(1) < -9007199254740994.000000000, toInt8(1) <= -9007199254740994.000000000, toInt8(1) > -9007199254740994.000000000, toInt8(1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt8(1), -9007199254740994.000000000 != toInt8(1), -9007199254740994.000000000 < toInt8(1), -9007199254740994.000000000 <= toInt8(1), -9007199254740994.000000000 > toInt8(1), -9007199254740994.000000000 >= toInt8(1) , toUInt16(1) = -9007199254740994.000000000, toUInt16(1) != -9007199254740994.000000000, toUInt16(1) < -9007199254740994.000000000, toUInt16(1) <= -9007199254740994.000000000, toUInt16(1) > -9007199254740994.000000000, toUInt16(1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt16(1), -9007199254740994.000000000 != toUInt16(1), -9007199254740994.000000000 < toUInt16(1), -9007199254740994.000000000 <= toUInt16(1), -9007199254740994.000000000 > toUInt16(1), -9007199254740994.000000000 >= toUInt16(1) , toInt16(1) = -9007199254740994.000000000, toInt16(1) != -9007199254740994.000000000, toInt16(1) < -9007199254740994.000000000, toInt16(1) <= -9007199254740994.000000000, toInt16(1) > -9007199254740994.000000000, toInt16(1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt16(1), -9007199254740994.000000000 != toInt16(1), -9007199254740994.000000000 < toInt16(1), -9007199254740994.000000000 <= toInt16(1), -9007199254740994.000000000 > toInt16(1), -9007199254740994.000000000 >= toInt16(1) , toUInt32(1) = -9007199254740994.000000000, toUInt32(1) != -9007199254740994.000000000, toUInt32(1) < -9007199254740994.000000000, toUInt32(1) <= -9007199254740994.000000000, toUInt32(1) > -9007199254740994.000000000, toUInt32(1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt32(1), -9007199254740994.000000000 != toUInt32(1), -9007199254740994.000000000 < toUInt32(1), -9007199254740994.000000000 <= toUInt32(1), -9007199254740994.000000000 > toUInt32(1), -9007199254740994.000000000 >= toUInt32(1) , toInt32(1) = -9007199254740994.000000000, toInt32(1) != -9007199254740994.000000000, toInt32(1) < -9007199254740994.000000000, toInt32(1) <= -9007199254740994.000000000, toInt32(1) > -9007199254740994.000000000, toInt32(1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt32(1), -9007199254740994.000000000 != toInt32(1), -9007199254740994.000000000 < toInt32(1), -9007199254740994.000000000 <= toInt32(1), -9007199254740994.000000000 > toInt32(1), -9007199254740994.000000000 >= toInt32(1) , toUInt64(1) = -9007199254740994.000000000, toUInt64(1) != -9007199254740994.000000000, toUInt64(1) < -9007199254740994.000000000, toUInt64(1) <= -9007199254740994.000000000, toUInt64(1) > -9007199254740994.000000000, toUInt64(1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt64(1), -9007199254740994.000000000 != toUInt64(1), -9007199254740994.000000000 < toUInt64(1), -9007199254740994.000000000 <= toUInt64(1), -9007199254740994.000000000 > toUInt64(1), -9007199254740994.000000000 >= toUInt64(1) , toInt64(1) = -9007199254740994.000000000, toInt64(1) != -9007199254740994.000000000, toInt64(1) < -9007199254740994.000000000, toInt64(1) <= -9007199254740994.000000000, toInt64(1) > -9007199254740994.000000000, toInt64(1) >= -9007199254740994.000000000, -9007199254740994.000000000 = toInt64(1), -9007199254740994.000000000 != toInt64(1), -9007199254740994.000000000 < toInt64(1), -9007199254740994.000000000 <= toInt64(1), -9007199254740994.000000000 > toInt64(1), -9007199254740994.000000000 >= toInt64(1) ;
SELECT '1', '104.000000000', 1 = 104.000000000, 1 != 104.000000000, 1 < 104.000000000, 1 <= 104.000000000, 1 > 104.000000000, 1 >= 104.000000000, 104.000000000 = 1, 104.000000000 != 1, 104.000000000 < 1, 104.000000000 <= 1, 104.000000000 > 1, 104.000000000 >= 1 , toUInt8(1) = 104.000000000, toUInt8(1) != 104.000000000, toUInt8(1) < 104.000000000, toUInt8(1) <= 104.000000000, toUInt8(1) > 104.000000000, toUInt8(1) >= 104.000000000, 104.000000000 = toUInt8(1), 104.000000000 != toUInt8(1), 104.000000000 < toUInt8(1), 104.000000000 <= toUInt8(1), 104.000000000 > toUInt8(1), 104.000000000 >= toUInt8(1) , toInt8(1) = 104.000000000, toInt8(1) != 104.000000000, toInt8(1) < 104.000000000, toInt8(1) <= 104.000000000, toInt8(1) > 104.000000000, toInt8(1) >= 104.000000000, 104.000000000 = toInt8(1), 104.000000000 != toInt8(1), 104.000000000 < toInt8(1), 104.000000000 <= toInt8(1), 104.000000000 > toInt8(1), 104.000000000 >= toInt8(1) , toUInt16(1) = 104.000000000, toUInt16(1) != 104.000000000, toUInt16(1) < 104.000000000, toUInt16(1) <= 104.000000000, toUInt16(1) > 104.000000000, toUInt16(1) >= 104.000000000, 104.000000000 = toUInt16(1), 104.000000000 != toUInt16(1), 104.000000000 < toUInt16(1), 104.000000000 <= toUInt16(1), 104.000000000 > toUInt16(1), 104.000000000 >= toUInt16(1) , toInt16(1) = 104.000000000, toInt16(1) != 104.000000000, toInt16(1) < 104.000000000, toInt16(1) <= 104.000000000, toInt16(1) > 104.000000000, toInt16(1) >= 104.000000000, 104.000000000 = toInt16(1), 104.000000000 != toInt16(1), 104.000000000 < toInt16(1), 104.000000000 <= toInt16(1), 104.000000000 > toInt16(1), 104.000000000 >= toInt16(1) , toUInt32(1) = 104.000000000, toUInt32(1) != 104.000000000, toUInt32(1) < 104.000000000, toUInt32(1) <= 104.000000000, toUInt32(1) > 104.000000000, toUInt32(1) >= 104.000000000, 104.000000000 = toUInt32(1), 104.000000000 != toUInt32(1), 104.000000000 < toUInt32(1), 104.000000000 <= toUInt32(1), 104.000000000 > toUInt32(1), 104.000000000 >= toUInt32(1) , toInt32(1) = 104.000000000, toInt32(1) != 104.000000000, toInt32(1) < 104.000000000, toInt32(1) <= 104.000000000, toInt32(1) > 104.000000000, toInt32(1) >= 104.000000000, 104.000000000 = toInt32(1), 104.000000000 != toInt32(1), 104.000000000 < toInt32(1), 104.000000000 <= toInt32(1), 104.000000000 > toInt32(1), 104.000000000 >= toInt32(1) , toUInt64(1) = 104.000000000, toUInt64(1) != 104.000000000, toUInt64(1) < 104.000000000, toUInt64(1) <= 104.000000000, toUInt64(1) > 104.000000000, toUInt64(1) >= 104.000000000, 104.000000000 = toUInt64(1), 104.000000000 != toUInt64(1), 104.000000000 < toUInt64(1), 104.000000000 <= toUInt64(1), 104.000000000 > toUInt64(1), 104.000000000 >= toUInt64(1) , toInt64(1) = 104.000000000, toInt64(1) != 104.000000000, toInt64(1) < 104.000000000, toInt64(1) <= 104.000000000, toInt64(1) > 104.000000000, toInt64(1) >= 104.000000000, 104.000000000 = toInt64(1), 104.000000000 != toInt64(1), 104.000000000 < toInt64(1), 104.000000000 <= toInt64(1), 104.000000000 > toInt64(1), 104.000000000 >= toInt64(1) ;
SELECT '1', '-4503599627370496.000000000', 1 = -4503599627370496.000000000, 1 != -4503599627370496.000000000, 1 < -4503599627370496.000000000, 1 <= -4503599627370496.000000000, 1 > -4503599627370496.000000000, 1 >= -4503599627370496.000000000, -4503599627370496.000000000 = 1, -4503599627370496.000000000 != 1, -4503599627370496.000000000 < 1, -4503599627370496.000000000 <= 1, -4503599627370496.000000000 > 1, -4503599627370496.000000000 >= 1 , toUInt8(1) = -4503599627370496.000000000, toUInt8(1) != -4503599627370496.000000000, toUInt8(1) < -4503599627370496.000000000, toUInt8(1) <= -4503599627370496.000000000, toUInt8(1) > -4503599627370496.000000000, toUInt8(1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt8(1), -4503599627370496.000000000 != toUInt8(1), -4503599627370496.000000000 < toUInt8(1), -4503599627370496.000000000 <= toUInt8(1), -4503599627370496.000000000 > toUInt8(1), -4503599627370496.000000000 >= toUInt8(1) , toInt8(1) = -4503599627370496.000000000, toInt8(1) != -4503599627370496.000000000, toInt8(1) < -4503599627370496.000000000, toInt8(1) <= -4503599627370496.000000000, toInt8(1) > -4503599627370496.000000000, toInt8(1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt8(1), -4503599627370496.000000000 != toInt8(1), -4503599627370496.000000000 < toInt8(1), -4503599627370496.000000000 <= toInt8(1), -4503599627370496.000000000 > toInt8(1), -4503599627370496.000000000 >= toInt8(1) , toUInt16(1) = -4503599627370496.000000000, toUInt16(1) != -4503599627370496.000000000, toUInt16(1) < -4503599627370496.000000000, toUInt16(1) <= -4503599627370496.000000000, toUInt16(1) > -4503599627370496.000000000, toUInt16(1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt16(1), -4503599627370496.000000000 != toUInt16(1), -4503599627370496.000000000 < toUInt16(1), -4503599627370496.000000000 <= toUInt16(1), -4503599627370496.000000000 > toUInt16(1), -4503599627370496.000000000 >= toUInt16(1) , toInt16(1) = -4503599627370496.000000000, toInt16(1) != -4503599627370496.000000000, toInt16(1) < -4503599627370496.000000000, toInt16(1) <= -4503599627370496.000000000, toInt16(1) > -4503599627370496.000000000, toInt16(1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt16(1), -4503599627370496.000000000 != toInt16(1), -4503599627370496.000000000 < toInt16(1), -4503599627370496.000000000 <= toInt16(1), -4503599627370496.000000000 > toInt16(1), -4503599627370496.000000000 >= toInt16(1) , toUInt32(1) = -4503599627370496.000000000, toUInt32(1) != -4503599627370496.000000000, toUInt32(1) < -4503599627370496.000000000, toUInt32(1) <= -4503599627370496.000000000, toUInt32(1) > -4503599627370496.000000000, toUInt32(1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt32(1), -4503599627370496.000000000 != toUInt32(1), -4503599627370496.000000000 < toUInt32(1), -4503599627370496.000000000 <= toUInt32(1), -4503599627370496.000000000 > toUInt32(1), -4503599627370496.000000000 >= toUInt32(1) , toInt32(1) = -4503599627370496.000000000, toInt32(1) != -4503599627370496.000000000, toInt32(1) < -4503599627370496.000000000, toInt32(1) <= -4503599627370496.000000000, toInt32(1) > -4503599627370496.000000000, toInt32(1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt32(1), -4503599627370496.000000000 != toInt32(1), -4503599627370496.000000000 < toInt32(1), -4503599627370496.000000000 <= toInt32(1), -4503599627370496.000000000 > toInt32(1), -4503599627370496.000000000 >= toInt32(1) , toUInt64(1) = -4503599627370496.000000000, toUInt64(1) != -4503599627370496.000000000, toUInt64(1) < -4503599627370496.000000000, toUInt64(1) <= -4503599627370496.000000000, toUInt64(1) > -4503599627370496.000000000, toUInt64(1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt64(1), -4503599627370496.000000000 != toUInt64(1), -4503599627370496.000000000 < toUInt64(1), -4503599627370496.000000000 <= toUInt64(1), -4503599627370496.000000000 > toUInt64(1), -4503599627370496.000000000 >= toUInt64(1) , toInt64(1) = -4503599627370496.000000000, toInt64(1) != -4503599627370496.000000000, toInt64(1) < -4503599627370496.000000000, toInt64(1) <= -4503599627370496.000000000, toInt64(1) > -4503599627370496.000000000, toInt64(1) >= -4503599627370496.000000000, -4503599627370496.000000000 = toInt64(1), -4503599627370496.000000000 != toInt64(1), -4503599627370496.000000000 < toInt64(1), -4503599627370496.000000000 <= toInt64(1), -4503599627370496.000000000 > toInt64(1), -4503599627370496.000000000 >= toInt64(1) ;
SELECT '1', '-0.500000000', 1 = -0.500000000, 1 != -0.500000000, 1 < -0.500000000, 1 <= -0.500000000, 1 > -0.500000000, 1 >= -0.500000000, -0.500000000 = 1, -0.500000000 != 1, -0.500000000 < 1, -0.500000000 <= 1, -0.500000000 > 1, -0.500000000 >= 1 , toUInt8(1) = -0.500000000, toUInt8(1) != -0.500000000, toUInt8(1) < -0.500000000, toUInt8(1) <= -0.500000000, toUInt8(1) > -0.500000000, toUInt8(1) >= -0.500000000, -0.500000000 = toUInt8(1), -0.500000000 != toUInt8(1), -0.500000000 < toUInt8(1), -0.500000000 <= toUInt8(1), -0.500000000 > toUInt8(1), -0.500000000 >= toUInt8(1) , toInt8(1) = -0.500000000, toInt8(1) != -0.500000000, toInt8(1) < -0.500000000, toInt8(1) <= -0.500000000, toInt8(1) > -0.500000000, toInt8(1) >= -0.500000000, -0.500000000 = toInt8(1), -0.500000000 != toInt8(1), -0.500000000 < toInt8(1), -0.500000000 <= toInt8(1), -0.500000000 > toInt8(1), -0.500000000 >= toInt8(1) , toUInt16(1) = -0.500000000, toUInt16(1) != -0.500000000, toUInt16(1) < -0.500000000, toUInt16(1) <= -0.500000000, toUInt16(1) > -0.500000000, toUInt16(1) >= -0.500000000, -0.500000000 = toUInt16(1), -0.500000000 != toUInt16(1), -0.500000000 < toUInt16(1), -0.500000000 <= toUInt16(1), -0.500000000 > toUInt16(1), -0.500000000 >= toUInt16(1) , toInt16(1) = -0.500000000, toInt16(1) != -0.500000000, toInt16(1) < -0.500000000, toInt16(1) <= -0.500000000, toInt16(1) > -0.500000000, toInt16(1) >= -0.500000000, -0.500000000 = toInt16(1), -0.500000000 != toInt16(1), -0.500000000 < toInt16(1), -0.500000000 <= toInt16(1), -0.500000000 > toInt16(1), -0.500000000 >= toInt16(1) , toUInt32(1) = -0.500000000, toUInt32(1) != -0.500000000, toUInt32(1) < -0.500000000, toUInt32(1) <= -0.500000000, toUInt32(1) > -0.500000000, toUInt32(1) >= -0.500000000, -0.500000000 = toUInt32(1), -0.500000000 != toUInt32(1), -0.500000000 < toUInt32(1), -0.500000000 <= toUInt32(1), -0.500000000 > toUInt32(1), -0.500000000 >= toUInt32(1) , toInt32(1) = -0.500000000, toInt32(1) != -0.500000000, toInt32(1) < -0.500000000, toInt32(1) <= -0.500000000, toInt32(1) > -0.500000000, toInt32(1) >= -0.500000000, -0.500000000 = toInt32(1), -0.500000000 != toInt32(1), -0.500000000 < toInt32(1), -0.500000000 <= toInt32(1), -0.500000000 > toInt32(1), -0.500000000 >= toInt32(1) , toUInt64(1) = -0.500000000, toUInt64(1) != -0.500000000, toUInt64(1) < -0.500000000, toUInt64(1) <= -0.500000000, toUInt64(1) > -0.500000000, toUInt64(1) >= -0.500000000, -0.500000000 = toUInt64(1), -0.500000000 != toUInt64(1), -0.500000000 < toUInt64(1), -0.500000000 <= toUInt64(1), -0.500000000 > toUInt64(1), -0.500000000 >= toUInt64(1) , toInt64(1) = -0.500000000, toInt64(1) != -0.500000000, toInt64(1) < -0.500000000, toInt64(1) <= -0.500000000, toInt64(1) > -0.500000000, toInt64(1) >= -0.500000000, -0.500000000 = toInt64(1), -0.500000000 != toInt64(1), -0.500000000 < toInt64(1), -0.500000000 <= toInt64(1), -0.500000000 > toInt64(1), -0.500000000 >= toInt64(1) ;
SELECT '1', '0.500000000', 1 = 0.500000000, 1 != 0.500000000, 1 < 0.500000000, 1 <= 0.500000000, 1 > 0.500000000, 1 >= 0.500000000, 0.500000000 = 1, 0.500000000 != 1, 0.500000000 < 1, 0.500000000 <= 1, 0.500000000 > 1, 0.500000000 >= 1 , toUInt8(1) = 0.500000000, toUInt8(1) != 0.500000000, toUInt8(1) < 0.500000000, toUInt8(1) <= 0.500000000, toUInt8(1) > 0.500000000, toUInt8(1) >= 0.500000000, 0.500000000 = toUInt8(1), 0.500000000 != toUInt8(1), 0.500000000 < toUInt8(1), 0.500000000 <= toUInt8(1), 0.500000000 > toUInt8(1), 0.500000000 >= toUInt8(1) , toInt8(1) = 0.500000000, toInt8(1) != 0.500000000, toInt8(1) < 0.500000000, toInt8(1) <= 0.500000000, toInt8(1) > 0.500000000, toInt8(1) >= 0.500000000, 0.500000000 = toInt8(1), 0.500000000 != toInt8(1), 0.500000000 < toInt8(1), 0.500000000 <= toInt8(1), 0.500000000 > toInt8(1), 0.500000000 >= toInt8(1) , toUInt16(1) = 0.500000000, toUInt16(1) != 0.500000000, toUInt16(1) < 0.500000000, toUInt16(1) <= 0.500000000, toUInt16(1) > 0.500000000, toUInt16(1) >= 0.500000000, 0.500000000 = toUInt16(1), 0.500000000 != toUInt16(1), 0.500000000 < toUInt16(1), 0.500000000 <= toUInt16(1), 0.500000000 > toUInt16(1), 0.500000000 >= toUInt16(1) , toInt16(1) = 0.500000000, toInt16(1) != 0.500000000, toInt16(1) < 0.500000000, toInt16(1) <= 0.500000000, toInt16(1) > 0.500000000, toInt16(1) >= 0.500000000, 0.500000000 = toInt16(1), 0.500000000 != toInt16(1), 0.500000000 < toInt16(1), 0.500000000 <= toInt16(1), 0.500000000 > toInt16(1), 0.500000000 >= toInt16(1) , toUInt32(1) = 0.500000000, toUInt32(1) != 0.500000000, toUInt32(1) < 0.500000000, toUInt32(1) <= 0.500000000, toUInt32(1) > 0.500000000, toUInt32(1) >= 0.500000000, 0.500000000 = toUInt32(1), 0.500000000 != toUInt32(1), 0.500000000 < toUInt32(1), 0.500000000 <= toUInt32(1), 0.500000000 > toUInt32(1), 0.500000000 >= toUInt32(1) , toInt32(1) = 0.500000000, toInt32(1) != 0.500000000, toInt32(1) < 0.500000000, toInt32(1) <= 0.500000000, toInt32(1) > 0.500000000, toInt32(1) >= 0.500000000, 0.500000000 = toInt32(1), 0.500000000 != toInt32(1), 0.500000000 < toInt32(1), 0.500000000 <= toInt32(1), 0.500000000 > toInt32(1), 0.500000000 >= toInt32(1) , toUInt64(1) = 0.500000000, toUInt64(1) != 0.500000000, toUInt64(1) < 0.500000000, toUInt64(1) <= 0.500000000, toUInt64(1) > 0.500000000, toUInt64(1) >= 0.500000000, 0.500000000 = toUInt64(1), 0.500000000 != toUInt64(1), 0.500000000 < toUInt64(1), 0.500000000 <= toUInt64(1), 0.500000000 > toUInt64(1), 0.500000000 >= toUInt64(1) , toInt64(1) = 0.500000000, toInt64(1) != 0.500000000, toInt64(1) < 0.500000000, toInt64(1) <= 0.500000000, toInt64(1) > 0.500000000, toInt64(1) >= 0.500000000, 0.500000000 = toInt64(1), 0.500000000 != toInt64(1), 0.500000000 < toInt64(1), 0.500000000 <= toInt64(1), 0.500000000 > toInt64(1), 0.500000000 >= toInt64(1) ;
SELECT '1', '-1.500000000', 1 = -1.500000000, 1 != -1.500000000, 1 < -1.500000000, 1 <= -1.500000000, 1 > -1.500000000, 1 >= -1.500000000, -1.500000000 = 1, -1.500000000 != 1, -1.500000000 < 1, -1.500000000 <= 1, -1.500000000 > 1, -1.500000000 >= 1 , toUInt8(1) = -1.500000000, toUInt8(1) != -1.500000000, toUInt8(1) < -1.500000000, toUInt8(1) <= -1.500000000, toUInt8(1) > -1.500000000, toUInt8(1) >= -1.500000000, -1.500000000 = toUInt8(1), -1.500000000 != toUInt8(1), -1.500000000 < toUInt8(1), -1.500000000 <= toUInt8(1), -1.500000000 > toUInt8(1), -1.500000000 >= toUInt8(1) , toInt8(1) = -1.500000000, toInt8(1) != -1.500000000, toInt8(1) < -1.500000000, toInt8(1) <= -1.500000000, toInt8(1) > -1.500000000, toInt8(1) >= -1.500000000, -1.500000000 = toInt8(1), -1.500000000 != toInt8(1), -1.500000000 < toInt8(1), -1.500000000 <= toInt8(1), -1.500000000 > toInt8(1), -1.500000000 >= toInt8(1) , toUInt16(1) = -1.500000000, toUInt16(1) != -1.500000000, toUInt16(1) < -1.500000000, toUInt16(1) <= -1.500000000, toUInt16(1) > -1.500000000, toUInt16(1) >= -1.500000000, -1.500000000 = toUInt16(1), -1.500000000 != toUInt16(1), -1.500000000 < toUInt16(1), -1.500000000 <= toUInt16(1), -1.500000000 > toUInt16(1), -1.500000000 >= toUInt16(1) , toInt16(1) = -1.500000000, toInt16(1) != -1.500000000, toInt16(1) < -1.500000000, toInt16(1) <= -1.500000000, toInt16(1) > -1.500000000, toInt16(1) >= -1.500000000, -1.500000000 = toInt16(1), -1.500000000 != toInt16(1), -1.500000000 < toInt16(1), -1.500000000 <= toInt16(1), -1.500000000 > toInt16(1), -1.500000000 >= toInt16(1) , toUInt32(1) = -1.500000000, toUInt32(1) != -1.500000000, toUInt32(1) < -1.500000000, toUInt32(1) <= -1.500000000, toUInt32(1) > -1.500000000, toUInt32(1) >= -1.500000000, -1.500000000 = toUInt32(1), -1.500000000 != toUInt32(1), -1.500000000 < toUInt32(1), -1.500000000 <= toUInt32(1), -1.500000000 > toUInt32(1), -1.500000000 >= toUInt32(1) , toInt32(1) = -1.500000000, toInt32(1) != -1.500000000, toInt32(1) < -1.500000000, toInt32(1) <= -1.500000000, toInt32(1) > -1.500000000, toInt32(1) >= -1.500000000, -1.500000000 = toInt32(1), -1.500000000 != toInt32(1), -1.500000000 < toInt32(1), -1.500000000 <= toInt32(1), -1.500000000 > toInt32(1), -1.500000000 >= toInt32(1) , toUInt64(1) = -1.500000000, toUInt64(1) != -1.500000000, toUInt64(1) < -1.500000000, toUInt64(1) <= -1.500000000, toUInt64(1) > -1.500000000, toUInt64(1) >= -1.500000000, -1.500000000 = toUInt64(1), -1.500000000 != toUInt64(1), -1.500000000 < toUInt64(1), -1.500000000 <= toUInt64(1), -1.500000000 > toUInt64(1), -1.500000000 >= toUInt64(1) , toInt64(1) = -1.500000000, toInt64(1) != -1.500000000, toInt64(1) < -1.500000000, toInt64(1) <= -1.500000000, toInt64(1) > -1.500000000, toInt64(1) >= -1.500000000, -1.500000000 = toInt64(1), -1.500000000 != toInt64(1), -1.500000000 < toInt64(1), -1.500000000 <= toInt64(1), -1.500000000 > toInt64(1), -1.500000000 >= toInt64(1) ;
SELECT '1', '1.500000000', 1 = 1.500000000, 1 != 1.500000000, 1 < 1.500000000, 1 <= 1.500000000, 1 > 1.500000000, 1 >= 1.500000000, 1.500000000 = 1, 1.500000000 != 1, 1.500000000 < 1, 1.500000000 <= 1, 1.500000000 > 1, 1.500000000 >= 1 , toUInt8(1) = 1.500000000, toUInt8(1) != 1.500000000, toUInt8(1) < 1.500000000, toUInt8(1) <= 1.500000000, toUInt8(1) > 1.500000000, toUInt8(1) >= 1.500000000, 1.500000000 = toUInt8(1), 1.500000000 != toUInt8(1), 1.500000000 < toUInt8(1), 1.500000000 <= toUInt8(1), 1.500000000 > toUInt8(1), 1.500000000 >= toUInt8(1) , toInt8(1) = 1.500000000, toInt8(1) != 1.500000000, toInt8(1) < 1.500000000, toInt8(1) <= 1.500000000, toInt8(1) > 1.500000000, toInt8(1) >= 1.500000000, 1.500000000 = toInt8(1), 1.500000000 != toInt8(1), 1.500000000 < toInt8(1), 1.500000000 <= toInt8(1), 1.500000000 > toInt8(1), 1.500000000 >= toInt8(1) , toUInt16(1) = 1.500000000, toUInt16(1) != 1.500000000, toUInt16(1) < 1.500000000, toUInt16(1) <= 1.500000000, toUInt16(1) > 1.500000000, toUInt16(1) >= 1.500000000, 1.500000000 = toUInt16(1), 1.500000000 != toUInt16(1), 1.500000000 < toUInt16(1), 1.500000000 <= toUInt16(1), 1.500000000 > toUInt16(1), 1.500000000 >= toUInt16(1) , toInt16(1) = 1.500000000, toInt16(1) != 1.500000000, toInt16(1) < 1.500000000, toInt16(1) <= 1.500000000, toInt16(1) > 1.500000000, toInt16(1) >= 1.500000000, 1.500000000 = toInt16(1), 1.500000000 != toInt16(1), 1.500000000 < toInt16(1), 1.500000000 <= toInt16(1), 1.500000000 > toInt16(1), 1.500000000 >= toInt16(1) , toUInt32(1) = 1.500000000, toUInt32(1) != 1.500000000, toUInt32(1) < 1.500000000, toUInt32(1) <= 1.500000000, toUInt32(1) > 1.500000000, toUInt32(1) >= 1.500000000, 1.500000000 = toUInt32(1), 1.500000000 != toUInt32(1), 1.500000000 < toUInt32(1), 1.500000000 <= toUInt32(1), 1.500000000 > toUInt32(1), 1.500000000 >= toUInt32(1) , toInt32(1) = 1.500000000, toInt32(1) != 1.500000000, toInt32(1) < 1.500000000, toInt32(1) <= 1.500000000, toInt32(1) > 1.500000000, toInt32(1) >= 1.500000000, 1.500000000 = toInt32(1), 1.500000000 != toInt32(1), 1.500000000 < toInt32(1), 1.500000000 <= toInt32(1), 1.500000000 > toInt32(1), 1.500000000 >= toInt32(1) , toUInt64(1) = 1.500000000, toUInt64(1) != 1.500000000, toUInt64(1) < 1.500000000, toUInt64(1) <= 1.500000000, toUInt64(1) > 1.500000000, toUInt64(1) >= 1.500000000, 1.500000000 = toUInt64(1), 1.500000000 != toUInt64(1), 1.500000000 < toUInt64(1), 1.500000000 <= toUInt64(1), 1.500000000 > toUInt64(1), 1.500000000 >= toUInt64(1) , toInt64(1) = 1.500000000, toInt64(1) != 1.500000000, toInt64(1) < 1.500000000, toInt64(1) <= 1.500000000, toInt64(1) > 1.500000000, toInt64(1) >= 1.500000000, 1.500000000 = toInt64(1), 1.500000000 != toInt64(1), 1.500000000 < toInt64(1), 1.500000000 <= toInt64(1), 1.500000000 > toInt64(1), 1.500000000 >= toInt64(1) ;
SELECT '1', '9007199254740992.000000000', 1 = 9007199254740992.000000000, 1 != 9007199254740992.000000000, 1 < 9007199254740992.000000000, 1 <= 9007199254740992.000000000, 1 > 9007199254740992.000000000, 1 >= 9007199254740992.000000000, 9007199254740992.000000000 = 1, 9007199254740992.000000000 != 1, 9007199254740992.000000000 < 1, 9007199254740992.000000000 <= 1, 9007199254740992.000000000 > 1, 9007199254740992.000000000 >= 1 , toUInt8(1) = 9007199254740992.000000000, toUInt8(1) != 9007199254740992.000000000, toUInt8(1) < 9007199254740992.000000000, toUInt8(1) <= 9007199254740992.000000000, toUInt8(1) > 9007199254740992.000000000, toUInt8(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt8(1), 9007199254740992.000000000 != toUInt8(1), 9007199254740992.000000000 < toUInt8(1), 9007199254740992.000000000 <= toUInt8(1), 9007199254740992.000000000 > toUInt8(1), 9007199254740992.000000000 >= toUInt8(1) , toInt8(1) = 9007199254740992.000000000, toInt8(1) != 9007199254740992.000000000, toInt8(1) < 9007199254740992.000000000, toInt8(1) <= 9007199254740992.000000000, toInt8(1) > 9007199254740992.000000000, toInt8(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt8(1), 9007199254740992.000000000 != toInt8(1), 9007199254740992.000000000 < toInt8(1), 9007199254740992.000000000 <= toInt8(1), 9007199254740992.000000000 > toInt8(1), 9007199254740992.000000000 >= toInt8(1) , toUInt16(1) = 9007199254740992.000000000, toUInt16(1) != 9007199254740992.000000000, toUInt16(1) < 9007199254740992.000000000, toUInt16(1) <= 9007199254740992.000000000, toUInt16(1) > 9007199254740992.000000000, toUInt16(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt16(1), 9007199254740992.000000000 != toUInt16(1), 9007199254740992.000000000 < toUInt16(1), 9007199254740992.000000000 <= toUInt16(1), 9007199254740992.000000000 > toUInt16(1), 9007199254740992.000000000 >= toUInt16(1) , toInt16(1) = 9007199254740992.000000000, toInt16(1) != 9007199254740992.000000000, toInt16(1) < 9007199254740992.000000000, toInt16(1) <= 9007199254740992.000000000, toInt16(1) > 9007199254740992.000000000, toInt16(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt16(1), 9007199254740992.000000000 != toInt16(1), 9007199254740992.000000000 < toInt16(1), 9007199254740992.000000000 <= toInt16(1), 9007199254740992.000000000 > toInt16(1), 9007199254740992.000000000 >= toInt16(1) , toUInt32(1) = 9007199254740992.000000000, toUInt32(1) != 9007199254740992.000000000, toUInt32(1) < 9007199254740992.000000000, toUInt32(1) <= 9007199254740992.000000000, toUInt32(1) > 9007199254740992.000000000, toUInt32(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt32(1), 9007199254740992.000000000 != toUInt32(1), 9007199254740992.000000000 < toUInt32(1), 9007199254740992.000000000 <= toUInt32(1), 9007199254740992.000000000 > toUInt32(1), 9007199254740992.000000000 >= toUInt32(1) , toInt32(1) = 9007199254740992.000000000, toInt32(1) != 9007199254740992.000000000, toInt32(1) < 9007199254740992.000000000, toInt32(1) <= 9007199254740992.000000000, toInt32(1) > 9007199254740992.000000000, toInt32(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt32(1), 9007199254740992.000000000 != toInt32(1), 9007199254740992.000000000 < toInt32(1), 9007199254740992.000000000 <= toInt32(1), 9007199254740992.000000000 > toInt32(1), 9007199254740992.000000000 >= toInt32(1) , toUInt64(1) = 9007199254740992.000000000, toUInt64(1) != 9007199254740992.000000000, toUInt64(1) < 9007199254740992.000000000, toUInt64(1) <= 9007199254740992.000000000, toUInt64(1) > 9007199254740992.000000000, toUInt64(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(1), 9007199254740992.000000000 != toUInt64(1), 9007199254740992.000000000 < toUInt64(1), 9007199254740992.000000000 <= toUInt64(1), 9007199254740992.000000000 > toUInt64(1), 9007199254740992.000000000 >= toUInt64(1) , toInt64(1) = 9007199254740992.000000000, toInt64(1) != 9007199254740992.000000000, toInt64(1) < 9007199254740992.000000000, toInt64(1) <= 9007199254740992.000000000, toInt64(1) > 9007199254740992.000000000, toInt64(1) >= 9007199254740992.000000000, 9007199254740992.000000000 = toInt64(1), 9007199254740992.000000000 != toInt64(1), 9007199254740992.000000000 < toInt64(1), 9007199254740992.000000000 <= toInt64(1), 9007199254740992.000000000 > toInt64(1), 9007199254740992.000000000 >= toInt64(1) ;
SELECT '1', '2251799813685247.500000000', 1 = 2251799813685247.500000000, 1 != 2251799813685247.500000000, 1 < 2251799813685247.500000000, 1 <= 2251799813685247.500000000, 1 > 2251799813685247.500000000, 1 >= 2251799813685247.500000000, 2251799813685247.500000000 = 1, 2251799813685247.500000000 != 1, 2251799813685247.500000000 < 1, 2251799813685247.500000000 <= 1, 2251799813685247.500000000 > 1, 2251799813685247.500000000 >= 1 , toUInt8(1) = 2251799813685247.500000000, toUInt8(1) != 2251799813685247.500000000, toUInt8(1) < 2251799813685247.500000000, toUInt8(1) <= 2251799813685247.500000000, toUInt8(1) > 2251799813685247.500000000, toUInt8(1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt8(1), 2251799813685247.500000000 != toUInt8(1), 2251799813685247.500000000 < toUInt8(1), 2251799813685247.500000000 <= toUInt8(1), 2251799813685247.500000000 > toUInt8(1), 2251799813685247.500000000 >= toUInt8(1) , toInt8(1) = 2251799813685247.500000000, toInt8(1) != 2251799813685247.500000000, toInt8(1) < 2251799813685247.500000000, toInt8(1) <= 2251799813685247.500000000, toInt8(1) > 2251799813685247.500000000, toInt8(1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt8(1), 2251799813685247.500000000 != toInt8(1), 2251799813685247.500000000 < toInt8(1), 2251799813685247.500000000 <= toInt8(1), 2251799813685247.500000000 > toInt8(1), 2251799813685247.500000000 >= toInt8(1) , toUInt16(1) = 2251799813685247.500000000, toUInt16(1) != 2251799813685247.500000000, toUInt16(1) < 2251799813685247.500000000, toUInt16(1) <= 2251799813685247.500000000, toUInt16(1) > 2251799813685247.500000000, toUInt16(1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt16(1), 2251799813685247.500000000 != toUInt16(1), 2251799813685247.500000000 < toUInt16(1), 2251799813685247.500000000 <= toUInt16(1), 2251799813685247.500000000 > toUInt16(1), 2251799813685247.500000000 >= toUInt16(1) , toInt16(1) = 2251799813685247.500000000, toInt16(1) != 2251799813685247.500000000, toInt16(1) < 2251799813685247.500000000, toInt16(1) <= 2251799813685247.500000000, toInt16(1) > 2251799813685247.500000000, toInt16(1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt16(1), 2251799813685247.500000000 != toInt16(1), 2251799813685247.500000000 < toInt16(1), 2251799813685247.500000000 <= toInt16(1), 2251799813685247.500000000 > toInt16(1), 2251799813685247.500000000 >= toInt16(1) , toUInt32(1) = 2251799813685247.500000000, toUInt32(1) != 2251799813685247.500000000, toUInt32(1) < 2251799813685247.500000000, toUInt32(1) <= 2251799813685247.500000000, toUInt32(1) > 2251799813685247.500000000, toUInt32(1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt32(1), 2251799813685247.500000000 != toUInt32(1), 2251799813685247.500000000 < toUInt32(1), 2251799813685247.500000000 <= toUInt32(1), 2251799813685247.500000000 > toUInt32(1), 2251799813685247.500000000 >= toUInt32(1) , toInt32(1) = 2251799813685247.500000000, toInt32(1) != 2251799813685247.500000000, toInt32(1) < 2251799813685247.500000000, toInt32(1) <= 2251799813685247.500000000, toInt32(1) > 2251799813685247.500000000, toInt32(1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt32(1), 2251799813685247.500000000 != toInt32(1), 2251799813685247.500000000 < toInt32(1), 2251799813685247.500000000 <= toInt32(1), 2251799813685247.500000000 > toInt32(1), 2251799813685247.500000000 >= toInt32(1) , toUInt64(1) = 2251799813685247.500000000, toUInt64(1) != 2251799813685247.500000000, toUInt64(1) < 2251799813685247.500000000, toUInt64(1) <= 2251799813685247.500000000, toUInt64(1) > 2251799813685247.500000000, toUInt64(1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt64(1), 2251799813685247.500000000 != toUInt64(1), 2251799813685247.500000000 < toUInt64(1), 2251799813685247.500000000 <= toUInt64(1), 2251799813685247.500000000 > toUInt64(1), 2251799813685247.500000000 >= toUInt64(1) , toInt64(1) = 2251799813685247.500000000, toInt64(1) != 2251799813685247.500000000, toInt64(1) < 2251799813685247.500000000, toInt64(1) <= 2251799813685247.500000000, toInt64(1) > 2251799813685247.500000000, toInt64(1) >= 2251799813685247.500000000, 2251799813685247.500000000 = toInt64(1), 2251799813685247.500000000 != toInt64(1), 2251799813685247.500000000 < toInt64(1), 2251799813685247.500000000 <= toInt64(1), 2251799813685247.500000000 > toInt64(1), 2251799813685247.500000000 >= toInt64(1) ;
SELECT '1', '2251799813685248.500000000', 1 = 2251799813685248.500000000, 1 != 2251799813685248.500000000, 1 < 2251799813685248.500000000, 1 <= 2251799813685248.500000000, 1 > 2251799813685248.500000000, 1 >= 2251799813685248.500000000, 2251799813685248.500000000 = 1, 2251799813685248.500000000 != 1, 2251799813685248.500000000 < 1, 2251799813685248.500000000 <= 1, 2251799813685248.500000000 > 1, 2251799813685248.500000000 >= 1 , toUInt8(1) = 2251799813685248.500000000, toUInt8(1) != 2251799813685248.500000000, toUInt8(1) < 2251799813685248.500000000, toUInt8(1) <= 2251799813685248.500000000, toUInt8(1) > 2251799813685248.500000000, toUInt8(1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt8(1), 2251799813685248.500000000 != toUInt8(1), 2251799813685248.500000000 < toUInt8(1), 2251799813685248.500000000 <= toUInt8(1), 2251799813685248.500000000 > toUInt8(1), 2251799813685248.500000000 >= toUInt8(1) , toInt8(1) = 2251799813685248.500000000, toInt8(1) != 2251799813685248.500000000, toInt8(1) < 2251799813685248.500000000, toInt8(1) <= 2251799813685248.500000000, toInt8(1) > 2251799813685248.500000000, toInt8(1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt8(1), 2251799813685248.500000000 != toInt8(1), 2251799813685248.500000000 < toInt8(1), 2251799813685248.500000000 <= toInt8(1), 2251799813685248.500000000 > toInt8(1), 2251799813685248.500000000 >= toInt8(1) , toUInt16(1) = 2251799813685248.500000000, toUInt16(1) != 2251799813685248.500000000, toUInt16(1) < 2251799813685248.500000000, toUInt16(1) <= 2251799813685248.500000000, toUInt16(1) > 2251799813685248.500000000, toUInt16(1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt16(1), 2251799813685248.500000000 != toUInt16(1), 2251799813685248.500000000 < toUInt16(1), 2251799813685248.500000000 <= toUInt16(1), 2251799813685248.500000000 > toUInt16(1), 2251799813685248.500000000 >= toUInt16(1) , toInt16(1) = 2251799813685248.500000000, toInt16(1) != 2251799813685248.500000000, toInt16(1) < 2251799813685248.500000000, toInt16(1) <= 2251799813685248.500000000, toInt16(1) > 2251799813685248.500000000, toInt16(1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt16(1), 2251799813685248.500000000 != toInt16(1), 2251799813685248.500000000 < toInt16(1), 2251799813685248.500000000 <= toInt16(1), 2251799813685248.500000000 > toInt16(1), 2251799813685248.500000000 >= toInt16(1) , toUInt32(1) = 2251799813685248.500000000, toUInt32(1) != 2251799813685248.500000000, toUInt32(1) < 2251799813685248.500000000, toUInt32(1) <= 2251799813685248.500000000, toUInt32(1) > 2251799813685248.500000000, toUInt32(1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt32(1), 2251799813685248.500000000 != toUInt32(1), 2251799813685248.500000000 < toUInt32(1), 2251799813685248.500000000 <= toUInt32(1), 2251799813685248.500000000 > toUInt32(1), 2251799813685248.500000000 >= toUInt32(1) , toInt32(1) = 2251799813685248.500000000, toInt32(1) != 2251799813685248.500000000, toInt32(1) < 2251799813685248.500000000, toInt32(1) <= 2251799813685248.500000000, toInt32(1) > 2251799813685248.500000000, toInt32(1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt32(1), 2251799813685248.500000000 != toInt32(1), 2251799813685248.500000000 < toInt32(1), 2251799813685248.500000000 <= toInt32(1), 2251799813685248.500000000 > toInt32(1), 2251799813685248.500000000 >= toInt32(1) , toUInt64(1) = 2251799813685248.500000000, toUInt64(1) != 2251799813685248.500000000, toUInt64(1) < 2251799813685248.500000000, toUInt64(1) <= 2251799813685248.500000000, toUInt64(1) > 2251799813685248.500000000, toUInt64(1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt64(1), 2251799813685248.500000000 != toUInt64(1), 2251799813685248.500000000 < toUInt64(1), 2251799813685248.500000000 <= toUInt64(1), 2251799813685248.500000000 > toUInt64(1), 2251799813685248.500000000 >= toUInt64(1) , toInt64(1) = 2251799813685248.500000000, toInt64(1) != 2251799813685248.500000000, toInt64(1) < 2251799813685248.500000000, toInt64(1) <= 2251799813685248.500000000, toInt64(1) > 2251799813685248.500000000, toInt64(1) >= 2251799813685248.500000000, 2251799813685248.500000000 = toInt64(1), 2251799813685248.500000000 != toInt64(1), 2251799813685248.500000000 < toInt64(1), 2251799813685248.500000000 <= toInt64(1), 2251799813685248.500000000 > toInt64(1), 2251799813685248.500000000 >= toInt64(1) ;
SELECT '1', '1152921504606846976.000000000', 1 = 1152921504606846976.000000000, 1 != 1152921504606846976.000000000, 1 < 1152921504606846976.000000000, 1 <= 1152921504606846976.000000000, 1 > 1152921504606846976.000000000, 1 >= 1152921504606846976.000000000, 1152921504606846976.000000000 = 1, 1152921504606846976.000000000 != 1, 1152921504606846976.000000000 < 1, 1152921504606846976.000000000 <= 1, 1152921504606846976.000000000 > 1, 1152921504606846976.000000000 >= 1 , toUInt8(1) = 1152921504606846976.000000000, toUInt8(1) != 1152921504606846976.000000000, toUInt8(1) < 1152921504606846976.000000000, toUInt8(1) <= 1152921504606846976.000000000, toUInt8(1) > 1152921504606846976.000000000, toUInt8(1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt8(1), 1152921504606846976.000000000 != toUInt8(1), 1152921504606846976.000000000 < toUInt8(1), 1152921504606846976.000000000 <= toUInt8(1), 1152921504606846976.000000000 > toUInt8(1), 1152921504606846976.000000000 >= toUInt8(1) , toInt8(1) = 1152921504606846976.000000000, toInt8(1) != 1152921504606846976.000000000, toInt8(1) < 1152921504606846976.000000000, toInt8(1) <= 1152921504606846976.000000000, toInt8(1) > 1152921504606846976.000000000, toInt8(1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt8(1), 1152921504606846976.000000000 != toInt8(1), 1152921504606846976.000000000 < toInt8(1), 1152921504606846976.000000000 <= toInt8(1), 1152921504606846976.000000000 > toInt8(1), 1152921504606846976.000000000 >= toInt8(1) , toUInt16(1) = 1152921504606846976.000000000, toUInt16(1) != 1152921504606846976.000000000, toUInt16(1) < 1152921504606846976.000000000, toUInt16(1) <= 1152921504606846976.000000000, toUInt16(1) > 1152921504606846976.000000000, toUInt16(1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt16(1), 1152921504606846976.000000000 != toUInt16(1), 1152921504606846976.000000000 < toUInt16(1), 1152921504606846976.000000000 <= toUInt16(1), 1152921504606846976.000000000 > toUInt16(1), 1152921504606846976.000000000 >= toUInt16(1) , toInt16(1) = 1152921504606846976.000000000, toInt16(1) != 1152921504606846976.000000000, toInt16(1) < 1152921504606846976.000000000, toInt16(1) <= 1152921504606846976.000000000, toInt16(1) > 1152921504606846976.000000000, toInt16(1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt16(1), 1152921504606846976.000000000 != toInt16(1), 1152921504606846976.000000000 < toInt16(1), 1152921504606846976.000000000 <= toInt16(1), 1152921504606846976.000000000 > toInt16(1), 1152921504606846976.000000000 >= toInt16(1) , toUInt32(1) = 1152921504606846976.000000000, toUInt32(1) != 1152921504606846976.000000000, toUInt32(1) < 1152921504606846976.000000000, toUInt32(1) <= 1152921504606846976.000000000, toUInt32(1) > 1152921504606846976.000000000, toUInt32(1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt32(1), 1152921504606846976.000000000 != toUInt32(1), 1152921504606846976.000000000 < toUInt32(1), 1152921504606846976.000000000 <= toUInt32(1), 1152921504606846976.000000000 > toUInt32(1), 1152921504606846976.000000000 >= toUInt32(1) , toInt32(1) = 1152921504606846976.000000000, toInt32(1) != 1152921504606846976.000000000, toInt32(1) < 1152921504606846976.000000000, toInt32(1) <= 1152921504606846976.000000000, toInt32(1) > 1152921504606846976.000000000, toInt32(1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt32(1), 1152921504606846976.000000000 != toInt32(1), 1152921504606846976.000000000 < toInt32(1), 1152921504606846976.000000000 <= toInt32(1), 1152921504606846976.000000000 > toInt32(1), 1152921504606846976.000000000 >= toInt32(1) , toUInt64(1) = 1152921504606846976.000000000, toUInt64(1) != 1152921504606846976.000000000, toUInt64(1) < 1152921504606846976.000000000, toUInt64(1) <= 1152921504606846976.000000000, toUInt64(1) > 1152921504606846976.000000000, toUInt64(1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt64(1), 1152921504606846976.000000000 != toUInt64(1), 1152921504606846976.000000000 < toUInt64(1), 1152921504606846976.000000000 <= toUInt64(1), 1152921504606846976.000000000 > toUInt64(1), 1152921504606846976.000000000 >= toUInt64(1) , toInt64(1) = 1152921504606846976.000000000, toInt64(1) != 1152921504606846976.000000000, toInt64(1) < 1152921504606846976.000000000, toInt64(1) <= 1152921504606846976.000000000, toInt64(1) > 1152921504606846976.000000000, toInt64(1) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toInt64(1), 1152921504606846976.000000000 != toInt64(1), 1152921504606846976.000000000 < toInt64(1), 1152921504606846976.000000000 <= toInt64(1), 1152921504606846976.000000000 > toInt64(1), 1152921504606846976.000000000 >= toInt64(1) ;
SELECT '1', '-1152921504606846976.000000000', 1 = -1152921504606846976.000000000, 1 != -1152921504606846976.000000000, 1 < -1152921504606846976.000000000, 1 <= -1152921504606846976.000000000, 1 > -1152921504606846976.000000000, 1 >= -1152921504606846976.000000000, -1152921504606846976.000000000 = 1, -1152921504606846976.000000000 != 1, -1152921504606846976.000000000 < 1, -1152921504606846976.000000000 <= 1, -1152921504606846976.000000000 > 1, -1152921504606846976.000000000 >= 1 , toUInt8(1) = -1152921504606846976.000000000, toUInt8(1) != -1152921504606846976.000000000, toUInt8(1) < -1152921504606846976.000000000, toUInt8(1) <= -1152921504606846976.000000000, toUInt8(1) > -1152921504606846976.000000000, toUInt8(1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt8(1), -1152921504606846976.000000000 != toUInt8(1), -1152921504606846976.000000000 < toUInt8(1), -1152921504606846976.000000000 <= toUInt8(1), -1152921504606846976.000000000 > toUInt8(1), -1152921504606846976.000000000 >= toUInt8(1) , toInt8(1) = -1152921504606846976.000000000, toInt8(1) != -1152921504606846976.000000000, toInt8(1) < -1152921504606846976.000000000, toInt8(1) <= -1152921504606846976.000000000, toInt8(1) > -1152921504606846976.000000000, toInt8(1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt8(1), -1152921504606846976.000000000 != toInt8(1), -1152921504606846976.000000000 < toInt8(1), -1152921504606846976.000000000 <= toInt8(1), -1152921504606846976.000000000 > toInt8(1), -1152921504606846976.000000000 >= toInt8(1) , toUInt16(1) = -1152921504606846976.000000000, toUInt16(1) != -1152921504606846976.000000000, toUInt16(1) < -1152921504606846976.000000000, toUInt16(1) <= -1152921504606846976.000000000, toUInt16(1) > -1152921504606846976.000000000, toUInt16(1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt16(1), -1152921504606846976.000000000 != toUInt16(1), -1152921504606846976.000000000 < toUInt16(1), -1152921504606846976.000000000 <= toUInt16(1), -1152921504606846976.000000000 > toUInt16(1), -1152921504606846976.000000000 >= toUInt16(1) , toInt16(1) = -1152921504606846976.000000000, toInt16(1) != -1152921504606846976.000000000, toInt16(1) < -1152921504606846976.000000000, toInt16(1) <= -1152921504606846976.000000000, toInt16(1) > -1152921504606846976.000000000, toInt16(1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt16(1), -1152921504606846976.000000000 != toInt16(1), -1152921504606846976.000000000 < toInt16(1), -1152921504606846976.000000000 <= toInt16(1), -1152921504606846976.000000000 > toInt16(1), -1152921504606846976.000000000 >= toInt16(1) , toUInt32(1) = -1152921504606846976.000000000, toUInt32(1) != -1152921504606846976.000000000, toUInt32(1) < -1152921504606846976.000000000, toUInt32(1) <= -1152921504606846976.000000000, toUInt32(1) > -1152921504606846976.000000000, toUInt32(1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt32(1), -1152921504606846976.000000000 != toUInt32(1), -1152921504606846976.000000000 < toUInt32(1), -1152921504606846976.000000000 <= toUInt32(1), -1152921504606846976.000000000 > toUInt32(1), -1152921504606846976.000000000 >= toUInt32(1) , toInt32(1) = -1152921504606846976.000000000, toInt32(1) != -1152921504606846976.000000000, toInt32(1) < -1152921504606846976.000000000, toInt32(1) <= -1152921504606846976.000000000, toInt32(1) > -1152921504606846976.000000000, toInt32(1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt32(1), -1152921504606846976.000000000 != toInt32(1), -1152921504606846976.000000000 < toInt32(1), -1152921504606846976.000000000 <= toInt32(1), -1152921504606846976.000000000 > toInt32(1), -1152921504606846976.000000000 >= toInt32(1) , toUInt64(1) = -1152921504606846976.000000000, toUInt64(1) != -1152921504606846976.000000000, toUInt64(1) < -1152921504606846976.000000000, toUInt64(1) <= -1152921504606846976.000000000, toUInt64(1) > -1152921504606846976.000000000, toUInt64(1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt64(1), -1152921504606846976.000000000 != toUInt64(1), -1152921504606846976.000000000 < toUInt64(1), -1152921504606846976.000000000 <= toUInt64(1), -1152921504606846976.000000000 > toUInt64(1), -1152921504606846976.000000000 >= toUInt64(1) , toInt64(1) = -1152921504606846976.000000000, toInt64(1) != -1152921504606846976.000000000, toInt64(1) < -1152921504606846976.000000000, toInt64(1) <= -1152921504606846976.000000000, toInt64(1) > -1152921504606846976.000000000, toInt64(1) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toInt64(1), -1152921504606846976.000000000 != toInt64(1), -1152921504606846976.000000000 < toInt64(1), -1152921504606846976.000000000 <= toInt64(1), -1152921504606846976.000000000 > toInt64(1), -1152921504606846976.000000000 >= toInt64(1) ;
SELECT '1', '-9223372036854786048.000000000', 1 = -9223372036854786048.000000000, 1 != -9223372036854786048.000000000, 1 < -9223372036854786048.000000000, 1 <= -9223372036854786048.000000000, 1 > -9223372036854786048.000000000, 1 >= -9223372036854786048.000000000, -9223372036854786048.000000000 = 1, -9223372036854786048.000000000 != 1, -9223372036854786048.000000000 < 1, -9223372036854786048.000000000 <= 1, -9223372036854786048.000000000 > 1, -9223372036854786048.000000000 >= 1 , toUInt8(1) = -9223372036854786048.000000000, toUInt8(1) != -9223372036854786048.000000000, toUInt8(1) < -9223372036854786048.000000000, toUInt8(1) <= -9223372036854786048.000000000, toUInt8(1) > -9223372036854786048.000000000, toUInt8(1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt8(1), -9223372036854786048.000000000 != toUInt8(1), -9223372036854786048.000000000 < toUInt8(1), -9223372036854786048.000000000 <= toUInt8(1), -9223372036854786048.000000000 > toUInt8(1), -9223372036854786048.000000000 >= toUInt8(1) , toInt8(1) = -9223372036854786048.000000000, toInt8(1) != -9223372036854786048.000000000, toInt8(1) < -9223372036854786048.000000000, toInt8(1) <= -9223372036854786048.000000000, toInt8(1) > -9223372036854786048.000000000, toInt8(1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt8(1), -9223372036854786048.000000000 != toInt8(1), -9223372036854786048.000000000 < toInt8(1), -9223372036854786048.000000000 <= toInt8(1), -9223372036854786048.000000000 > toInt8(1), -9223372036854786048.000000000 >= toInt8(1) , toUInt16(1) = -9223372036854786048.000000000, toUInt16(1) != -9223372036854786048.000000000, toUInt16(1) < -9223372036854786048.000000000, toUInt16(1) <= -9223372036854786048.000000000, toUInt16(1) > -9223372036854786048.000000000, toUInt16(1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt16(1), -9223372036854786048.000000000 != toUInt16(1), -9223372036854786048.000000000 < toUInt16(1), -9223372036854786048.000000000 <= toUInt16(1), -9223372036854786048.000000000 > toUInt16(1), -9223372036854786048.000000000 >= toUInt16(1) , toInt16(1) = -9223372036854786048.000000000, toInt16(1) != -9223372036854786048.000000000, toInt16(1) < -9223372036854786048.000000000, toInt16(1) <= -9223372036854786048.000000000, toInt16(1) > -9223372036854786048.000000000, toInt16(1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt16(1), -9223372036854786048.000000000 != toInt16(1), -9223372036854786048.000000000 < toInt16(1), -9223372036854786048.000000000 <= toInt16(1), -9223372036854786048.000000000 > toInt16(1), -9223372036854786048.000000000 >= toInt16(1) , toUInt32(1) = -9223372036854786048.000000000, toUInt32(1) != -9223372036854786048.000000000, toUInt32(1) < -9223372036854786048.000000000, toUInt32(1) <= -9223372036854786048.000000000, toUInt32(1) > -9223372036854786048.000000000, toUInt32(1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt32(1), -9223372036854786048.000000000 != toUInt32(1), -9223372036854786048.000000000 < toUInt32(1), -9223372036854786048.000000000 <= toUInt32(1), -9223372036854786048.000000000 > toUInt32(1), -9223372036854786048.000000000 >= toUInt32(1) , toInt32(1) = -9223372036854786048.000000000, toInt32(1) != -9223372036854786048.000000000, toInt32(1) < -9223372036854786048.000000000, toInt32(1) <= -9223372036854786048.000000000, toInt32(1) > -9223372036854786048.000000000, toInt32(1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt32(1), -9223372036854786048.000000000 != toInt32(1), -9223372036854786048.000000000 < toInt32(1), -9223372036854786048.000000000 <= toInt32(1), -9223372036854786048.000000000 > toInt32(1), -9223372036854786048.000000000 >= toInt32(1) , toUInt64(1) = -9223372036854786048.000000000, toUInt64(1) != -9223372036854786048.000000000, toUInt64(1) < -9223372036854786048.000000000, toUInt64(1) <= -9223372036854786048.000000000, toUInt64(1) > -9223372036854786048.000000000, toUInt64(1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt64(1), -9223372036854786048.000000000 != toUInt64(1), -9223372036854786048.000000000 < toUInt64(1), -9223372036854786048.000000000 <= toUInt64(1), -9223372036854786048.000000000 > toUInt64(1), -9223372036854786048.000000000 >= toUInt64(1) , toInt64(1) = -9223372036854786048.000000000, toInt64(1) != -9223372036854786048.000000000, toInt64(1) < -9223372036854786048.000000000, toInt64(1) <= -9223372036854786048.000000000, toInt64(1) > -9223372036854786048.000000000, toInt64(1) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toInt64(1), -9223372036854786048.000000000 != toInt64(1), -9223372036854786048.000000000 < toInt64(1), -9223372036854786048.000000000 <= toInt64(1), -9223372036854786048.000000000 > toInt64(1), -9223372036854786048.000000000 >= toInt64(1) ;
SELECT '1', '9223372036854786048.000000000', 1 = 9223372036854786048.000000000, 1 != 9223372036854786048.000000000, 1 < 9223372036854786048.000000000, 1 <= 9223372036854786048.000000000, 1 > 9223372036854786048.000000000, 1 >= 9223372036854786048.000000000, 9223372036854786048.000000000 = 1, 9223372036854786048.000000000 != 1, 9223372036854786048.000000000 < 1, 9223372036854786048.000000000 <= 1, 9223372036854786048.000000000 > 1, 9223372036854786048.000000000 >= 1 , toUInt8(1) = 9223372036854786048.000000000, toUInt8(1) != 9223372036854786048.000000000, toUInt8(1) < 9223372036854786048.000000000, toUInt8(1) <= 9223372036854786048.000000000, toUInt8(1) > 9223372036854786048.000000000, toUInt8(1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt8(1), 9223372036854786048.000000000 != toUInt8(1), 9223372036854786048.000000000 < toUInt8(1), 9223372036854786048.000000000 <= toUInt8(1), 9223372036854786048.000000000 > toUInt8(1), 9223372036854786048.000000000 >= toUInt8(1) , toInt8(1) = 9223372036854786048.000000000, toInt8(1) != 9223372036854786048.000000000, toInt8(1) < 9223372036854786048.000000000, toInt8(1) <= 9223372036854786048.000000000, toInt8(1) > 9223372036854786048.000000000, toInt8(1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt8(1), 9223372036854786048.000000000 != toInt8(1), 9223372036854786048.000000000 < toInt8(1), 9223372036854786048.000000000 <= toInt8(1), 9223372036854786048.000000000 > toInt8(1), 9223372036854786048.000000000 >= toInt8(1) , toUInt16(1) = 9223372036854786048.000000000, toUInt16(1) != 9223372036854786048.000000000, toUInt16(1) < 9223372036854786048.000000000, toUInt16(1) <= 9223372036854786048.000000000, toUInt16(1) > 9223372036854786048.000000000, toUInt16(1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt16(1), 9223372036854786048.000000000 != toUInt16(1), 9223372036854786048.000000000 < toUInt16(1), 9223372036854786048.000000000 <= toUInt16(1), 9223372036854786048.000000000 > toUInt16(1), 9223372036854786048.000000000 >= toUInt16(1) , toInt16(1) = 9223372036854786048.000000000, toInt16(1) != 9223372036854786048.000000000, toInt16(1) < 9223372036854786048.000000000, toInt16(1) <= 9223372036854786048.000000000, toInt16(1) > 9223372036854786048.000000000, toInt16(1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt16(1), 9223372036854786048.000000000 != toInt16(1), 9223372036854786048.000000000 < toInt16(1), 9223372036854786048.000000000 <= toInt16(1), 9223372036854786048.000000000 > toInt16(1), 9223372036854786048.000000000 >= toInt16(1) , toUInt32(1) = 9223372036854786048.000000000, toUInt32(1) != 9223372036854786048.000000000, toUInt32(1) < 9223372036854786048.000000000, toUInt32(1) <= 9223372036854786048.000000000, toUInt32(1) > 9223372036854786048.000000000, toUInt32(1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt32(1), 9223372036854786048.000000000 != toUInt32(1), 9223372036854786048.000000000 < toUInt32(1), 9223372036854786048.000000000 <= toUInt32(1), 9223372036854786048.000000000 > toUInt32(1), 9223372036854786048.000000000 >= toUInt32(1) , toInt32(1) = 9223372036854786048.000000000, toInt32(1) != 9223372036854786048.000000000, toInt32(1) < 9223372036854786048.000000000, toInt32(1) <= 9223372036854786048.000000000, toInt32(1) > 9223372036854786048.000000000, toInt32(1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt32(1), 9223372036854786048.000000000 != toInt32(1), 9223372036854786048.000000000 < toInt32(1), 9223372036854786048.000000000 <= toInt32(1), 9223372036854786048.000000000 > toInt32(1), 9223372036854786048.000000000 >= toInt32(1) , toUInt64(1) = 9223372036854786048.000000000, toUInt64(1) != 9223372036854786048.000000000, toUInt64(1) < 9223372036854786048.000000000, toUInt64(1) <= 9223372036854786048.000000000, toUInt64(1) > 9223372036854786048.000000000, toUInt64(1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt64(1), 9223372036854786048.000000000 != toUInt64(1), 9223372036854786048.000000000 < toUInt64(1), 9223372036854786048.000000000 <= toUInt64(1), 9223372036854786048.000000000 > toUInt64(1), 9223372036854786048.000000000 >= toUInt64(1) , toInt64(1) = 9223372036854786048.000000000, toInt64(1) != 9223372036854786048.000000000, toInt64(1) < 9223372036854786048.000000000, toInt64(1) <= 9223372036854786048.000000000, toInt64(1) > 9223372036854786048.000000000, toInt64(1) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toInt64(1), 9223372036854786048.000000000 != toInt64(1), 9223372036854786048.000000000 < toInt64(1), 9223372036854786048.000000000 <= toInt64(1), 9223372036854786048.000000000 > toInt64(1), 9223372036854786048.000000000 >= toInt64(1) ;
SELECT '18446744073709551615', '0.000000000', 18446744073709551615 = 0.000000000, 18446744073709551615 != 0.000000000, 18446744073709551615 < 0.000000000, 18446744073709551615 <= 0.000000000, 18446744073709551615 > 0.000000000, 18446744073709551615 >= 0.000000000, 0.000000000 = 18446744073709551615, 0.000000000 != 18446744073709551615, 0.000000000 < 18446744073709551615, 0.000000000 <= 18446744073709551615, 0.000000000 > 18446744073709551615, 0.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 0.000000000, toUInt64(18446744073709551615) != 0.000000000, toUInt64(18446744073709551615) < 0.000000000, toUInt64(18446744073709551615) <= 0.000000000, toUInt64(18446744073709551615) > 0.000000000, toUInt64(18446744073709551615) >= 0.000000000, 0.000000000 = toUInt64(18446744073709551615), 0.000000000 != toUInt64(18446744073709551615), 0.000000000 < toUInt64(18446744073709551615), 0.000000000 <= toUInt64(18446744073709551615), 0.000000000 > toUInt64(18446744073709551615), 0.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-1.000000000', 18446744073709551615 = -1.000000000, 18446744073709551615 != -1.000000000, 18446744073709551615 < -1.000000000, 18446744073709551615 <= -1.000000000, 18446744073709551615 > -1.000000000, 18446744073709551615 >= -1.000000000, -1.000000000 = 18446744073709551615, -1.000000000 != 18446744073709551615, -1.000000000 < 18446744073709551615, -1.000000000 <= 18446744073709551615, -1.000000000 > 18446744073709551615, -1.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -1.000000000, toUInt64(18446744073709551615) != -1.000000000, toUInt64(18446744073709551615) < -1.000000000, toUInt64(18446744073709551615) <= -1.000000000, toUInt64(18446744073709551615) > -1.000000000, toUInt64(18446744073709551615) >= -1.000000000, -1.000000000 = toUInt64(18446744073709551615), -1.000000000 != toUInt64(18446744073709551615), -1.000000000 < toUInt64(18446744073709551615), -1.000000000 <= toUInt64(18446744073709551615), -1.000000000 > toUInt64(18446744073709551615), -1.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '1.000000000', 18446744073709551615 = 1.000000000, 18446744073709551615 != 1.000000000, 18446744073709551615 < 1.000000000, 18446744073709551615 <= 1.000000000, 18446744073709551615 > 1.000000000, 18446744073709551615 >= 1.000000000, 1.000000000 = 18446744073709551615, 1.000000000 != 18446744073709551615, 1.000000000 < 18446744073709551615, 1.000000000 <= 18446744073709551615, 1.000000000 > 18446744073709551615, 1.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 1.000000000, toUInt64(18446744073709551615) != 1.000000000, toUInt64(18446744073709551615) < 1.000000000, toUInt64(18446744073709551615) <= 1.000000000, toUInt64(18446744073709551615) > 1.000000000, toUInt64(18446744073709551615) >= 1.000000000, 1.000000000 = toUInt64(18446744073709551615), 1.000000000 != toUInt64(18446744073709551615), 1.000000000 < toUInt64(18446744073709551615), 1.000000000 <= toUInt64(18446744073709551615), 1.000000000 > toUInt64(18446744073709551615), 1.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '18446744073709551616.000000000', 18446744073709551615 = 18446744073709551616.000000000, 18446744073709551615 != 18446744073709551616.000000000, 18446744073709551615 < 18446744073709551616.000000000, 18446744073709551615 <= 18446744073709551616.000000000, 18446744073709551615 > 18446744073709551616.000000000, 18446744073709551615 >= 18446744073709551616.000000000, 18446744073709551616.000000000 = 18446744073709551615, 18446744073709551616.000000000 != 18446744073709551615, 18446744073709551616.000000000 < 18446744073709551615, 18446744073709551616.000000000 <= 18446744073709551615, 18446744073709551616.000000000 > 18446744073709551615, 18446744073709551616.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 18446744073709551616.000000000, toUInt64(18446744073709551615) != 18446744073709551616.000000000, toUInt64(18446744073709551615) < 18446744073709551616.000000000, toUInt64(18446744073709551615) <= 18446744073709551616.000000000, toUInt64(18446744073709551615) > 18446744073709551616.000000000, toUInt64(18446744073709551615) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt64(18446744073709551615), 18446744073709551616.000000000 != toUInt64(18446744073709551615), 18446744073709551616.000000000 < toUInt64(18446744073709551615), 18446744073709551616.000000000 <= toUInt64(18446744073709551615), 18446744073709551616.000000000 > toUInt64(18446744073709551615), 18446744073709551616.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '9223372036854775808.000000000', 18446744073709551615 = 9223372036854775808.000000000, 18446744073709551615 != 9223372036854775808.000000000, 18446744073709551615 < 9223372036854775808.000000000, 18446744073709551615 <= 9223372036854775808.000000000, 18446744073709551615 > 9223372036854775808.000000000, 18446744073709551615 >= 9223372036854775808.000000000, 9223372036854775808.000000000 = 18446744073709551615, 9223372036854775808.000000000 != 18446744073709551615, 9223372036854775808.000000000 < 18446744073709551615, 9223372036854775808.000000000 <= 18446744073709551615, 9223372036854775808.000000000 > 18446744073709551615, 9223372036854775808.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 9223372036854775808.000000000, toUInt64(18446744073709551615) != 9223372036854775808.000000000, toUInt64(18446744073709551615) < 9223372036854775808.000000000, toUInt64(18446744073709551615) <= 9223372036854775808.000000000, toUInt64(18446744073709551615) > 9223372036854775808.000000000, toUInt64(18446744073709551615) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt64(18446744073709551615), 9223372036854775808.000000000 != toUInt64(18446744073709551615), 9223372036854775808.000000000 < toUInt64(18446744073709551615), 9223372036854775808.000000000 <= toUInt64(18446744073709551615), 9223372036854775808.000000000 > toUInt64(18446744073709551615), 9223372036854775808.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-9223372036854775808.000000000', 18446744073709551615 = -9223372036854775808.000000000, 18446744073709551615 != -9223372036854775808.000000000, 18446744073709551615 < -9223372036854775808.000000000, 18446744073709551615 <= -9223372036854775808.000000000, 18446744073709551615 > -9223372036854775808.000000000, 18446744073709551615 >= -9223372036854775808.000000000, -9223372036854775808.000000000 = 18446744073709551615, -9223372036854775808.000000000 != 18446744073709551615, -9223372036854775808.000000000 < 18446744073709551615, -9223372036854775808.000000000 <= 18446744073709551615, -9223372036854775808.000000000 > 18446744073709551615, -9223372036854775808.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -9223372036854775808.000000000, toUInt64(18446744073709551615) != -9223372036854775808.000000000, toUInt64(18446744073709551615) < -9223372036854775808.000000000, toUInt64(18446744073709551615) <= -9223372036854775808.000000000, toUInt64(18446744073709551615) > -9223372036854775808.000000000, toUInt64(18446744073709551615) >= -9223372036854775808.000000000, -9223372036854775808.000000000 = toUInt64(18446744073709551615), -9223372036854775808.000000000 != toUInt64(18446744073709551615), -9223372036854775808.000000000 < toUInt64(18446744073709551615), -9223372036854775808.000000000 <= toUInt64(18446744073709551615), -9223372036854775808.000000000 > toUInt64(18446744073709551615), -9223372036854775808.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '9223372036854775808.000000000', 18446744073709551615 = 9223372036854775808.000000000, 18446744073709551615 != 9223372036854775808.000000000, 18446744073709551615 < 9223372036854775808.000000000, 18446744073709551615 <= 9223372036854775808.000000000, 18446744073709551615 > 9223372036854775808.000000000, 18446744073709551615 >= 9223372036854775808.000000000, 9223372036854775808.000000000 = 18446744073709551615, 9223372036854775808.000000000 != 18446744073709551615, 9223372036854775808.000000000 < 18446744073709551615, 9223372036854775808.000000000 <= 18446744073709551615, 9223372036854775808.000000000 > 18446744073709551615, 9223372036854775808.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 9223372036854775808.000000000, toUInt64(18446744073709551615) != 9223372036854775808.000000000, toUInt64(18446744073709551615) < 9223372036854775808.000000000, toUInt64(18446744073709551615) <= 9223372036854775808.000000000, toUInt64(18446744073709551615) > 9223372036854775808.000000000, toUInt64(18446744073709551615) >= 9223372036854775808.000000000, 9223372036854775808.000000000 = toUInt64(18446744073709551615), 9223372036854775808.000000000 != toUInt64(18446744073709551615), 9223372036854775808.000000000 < toUInt64(18446744073709551615), 9223372036854775808.000000000 <= toUInt64(18446744073709551615), 9223372036854775808.000000000 > toUInt64(18446744073709551615), 9223372036854775808.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '2251799813685248.000000000', 18446744073709551615 = 2251799813685248.000000000, 18446744073709551615 != 2251799813685248.000000000, 18446744073709551615 < 2251799813685248.000000000, 18446744073709551615 <= 2251799813685248.000000000, 18446744073709551615 > 2251799813685248.000000000, 18446744073709551615 >= 2251799813685248.000000000, 2251799813685248.000000000 = 18446744073709551615, 2251799813685248.000000000 != 18446744073709551615, 2251799813685248.000000000 < 18446744073709551615, 2251799813685248.000000000 <= 18446744073709551615, 2251799813685248.000000000 > 18446744073709551615, 2251799813685248.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 2251799813685248.000000000, toUInt64(18446744073709551615) != 2251799813685248.000000000, toUInt64(18446744073709551615) < 2251799813685248.000000000, toUInt64(18446744073709551615) <= 2251799813685248.000000000, toUInt64(18446744073709551615) > 2251799813685248.000000000, toUInt64(18446744073709551615) >= 2251799813685248.000000000, 2251799813685248.000000000 = toUInt64(18446744073709551615), 2251799813685248.000000000 != toUInt64(18446744073709551615), 2251799813685248.000000000 < toUInt64(18446744073709551615), 2251799813685248.000000000 <= toUInt64(18446744073709551615), 2251799813685248.000000000 > toUInt64(18446744073709551615), 2251799813685248.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '4503599627370496.000000000', 18446744073709551615 = 4503599627370496.000000000, 18446744073709551615 != 4503599627370496.000000000, 18446744073709551615 < 4503599627370496.000000000, 18446744073709551615 <= 4503599627370496.000000000, 18446744073709551615 > 4503599627370496.000000000, 18446744073709551615 >= 4503599627370496.000000000, 4503599627370496.000000000 = 18446744073709551615, 4503599627370496.000000000 != 18446744073709551615, 4503599627370496.000000000 < 18446744073709551615, 4503599627370496.000000000 <= 18446744073709551615, 4503599627370496.000000000 > 18446744073709551615, 4503599627370496.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 4503599627370496.000000000, toUInt64(18446744073709551615) != 4503599627370496.000000000, toUInt64(18446744073709551615) < 4503599627370496.000000000, toUInt64(18446744073709551615) <= 4503599627370496.000000000, toUInt64(18446744073709551615) > 4503599627370496.000000000, toUInt64(18446744073709551615) >= 4503599627370496.000000000, 4503599627370496.000000000 = toUInt64(18446744073709551615), 4503599627370496.000000000 != toUInt64(18446744073709551615), 4503599627370496.000000000 < toUInt64(18446744073709551615), 4503599627370496.000000000 <= toUInt64(18446744073709551615), 4503599627370496.000000000 > toUInt64(18446744073709551615), 4503599627370496.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '9007199254740991.000000000', 18446744073709551615 = 9007199254740991.000000000, 18446744073709551615 != 9007199254740991.000000000, 18446744073709551615 < 9007199254740991.000000000, 18446744073709551615 <= 9007199254740991.000000000, 18446744073709551615 > 9007199254740991.000000000, 18446744073709551615 >= 9007199254740991.000000000, 9007199254740991.000000000 = 18446744073709551615, 9007199254740991.000000000 != 18446744073709551615, 9007199254740991.000000000 < 18446744073709551615, 9007199254740991.000000000 <= 18446744073709551615, 9007199254740991.000000000 > 18446744073709551615, 9007199254740991.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 9007199254740991.000000000, toUInt64(18446744073709551615) != 9007199254740991.000000000, toUInt64(18446744073709551615) < 9007199254740991.000000000, toUInt64(18446744073709551615) <= 9007199254740991.000000000, toUInt64(18446744073709551615) > 9007199254740991.000000000, toUInt64(18446744073709551615) >= 9007199254740991.000000000, 9007199254740991.000000000 = toUInt64(18446744073709551615), 9007199254740991.000000000 != toUInt64(18446744073709551615), 9007199254740991.000000000 < toUInt64(18446744073709551615), 9007199254740991.000000000 <= toUInt64(18446744073709551615), 9007199254740991.000000000 > toUInt64(18446744073709551615), 9007199254740991.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '9007199254740992.000000000', 18446744073709551615 = 9007199254740992.000000000, 18446744073709551615 != 9007199254740992.000000000, 18446744073709551615 < 9007199254740992.000000000, 18446744073709551615 <= 9007199254740992.000000000, 18446744073709551615 > 9007199254740992.000000000, 18446744073709551615 >= 9007199254740992.000000000, 9007199254740992.000000000 = 18446744073709551615, 9007199254740992.000000000 != 18446744073709551615, 9007199254740992.000000000 < 18446744073709551615, 9007199254740992.000000000 <= 18446744073709551615, 9007199254740992.000000000 > 18446744073709551615, 9007199254740992.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 9007199254740992.000000000, toUInt64(18446744073709551615) != 9007199254740992.000000000, toUInt64(18446744073709551615) < 9007199254740992.000000000, toUInt64(18446744073709551615) <= 9007199254740992.000000000, toUInt64(18446744073709551615) > 9007199254740992.000000000, toUInt64(18446744073709551615) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(18446744073709551615), 9007199254740992.000000000 != toUInt64(18446744073709551615), 9007199254740992.000000000 < toUInt64(18446744073709551615), 9007199254740992.000000000 <= toUInt64(18446744073709551615), 9007199254740992.000000000 > toUInt64(18446744073709551615), 9007199254740992.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '9007199254740992.000000000', 18446744073709551615 = 9007199254740992.000000000, 18446744073709551615 != 9007199254740992.000000000, 18446744073709551615 < 9007199254740992.000000000, 18446744073709551615 <= 9007199254740992.000000000, 18446744073709551615 > 9007199254740992.000000000, 18446744073709551615 >= 9007199254740992.000000000, 9007199254740992.000000000 = 18446744073709551615, 9007199254740992.000000000 != 18446744073709551615, 9007199254740992.000000000 < 18446744073709551615, 9007199254740992.000000000 <= 18446744073709551615, 9007199254740992.000000000 > 18446744073709551615, 9007199254740992.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 9007199254740992.000000000, toUInt64(18446744073709551615) != 9007199254740992.000000000, toUInt64(18446744073709551615) < 9007199254740992.000000000, toUInt64(18446744073709551615) <= 9007199254740992.000000000, toUInt64(18446744073709551615) > 9007199254740992.000000000, toUInt64(18446744073709551615) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(18446744073709551615), 9007199254740992.000000000 != toUInt64(18446744073709551615), 9007199254740992.000000000 < toUInt64(18446744073709551615), 9007199254740992.000000000 <= toUInt64(18446744073709551615), 9007199254740992.000000000 > toUInt64(18446744073709551615), 9007199254740992.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '9007199254740994.000000000', 18446744073709551615 = 9007199254740994.000000000, 18446744073709551615 != 9007199254740994.000000000, 18446744073709551615 < 9007199254740994.000000000, 18446744073709551615 <= 9007199254740994.000000000, 18446744073709551615 > 9007199254740994.000000000, 18446744073709551615 >= 9007199254740994.000000000, 9007199254740994.000000000 = 18446744073709551615, 9007199254740994.000000000 != 18446744073709551615, 9007199254740994.000000000 < 18446744073709551615, 9007199254740994.000000000 <= 18446744073709551615, 9007199254740994.000000000 > 18446744073709551615, 9007199254740994.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 9007199254740994.000000000, toUInt64(18446744073709551615) != 9007199254740994.000000000, toUInt64(18446744073709551615) < 9007199254740994.000000000, toUInt64(18446744073709551615) <= 9007199254740994.000000000, toUInt64(18446744073709551615) > 9007199254740994.000000000, toUInt64(18446744073709551615) >= 9007199254740994.000000000, 9007199254740994.000000000 = toUInt64(18446744073709551615), 9007199254740994.000000000 != toUInt64(18446744073709551615), 9007199254740994.000000000 < toUInt64(18446744073709551615), 9007199254740994.000000000 <= toUInt64(18446744073709551615), 9007199254740994.000000000 > toUInt64(18446744073709551615), 9007199254740994.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-9007199254740991.000000000', 18446744073709551615 = -9007199254740991.000000000, 18446744073709551615 != -9007199254740991.000000000, 18446744073709551615 < -9007199254740991.000000000, 18446744073709551615 <= -9007199254740991.000000000, 18446744073709551615 > -9007199254740991.000000000, 18446744073709551615 >= -9007199254740991.000000000, -9007199254740991.000000000 = 18446744073709551615, -9007199254740991.000000000 != 18446744073709551615, -9007199254740991.000000000 < 18446744073709551615, -9007199254740991.000000000 <= 18446744073709551615, -9007199254740991.000000000 > 18446744073709551615, -9007199254740991.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -9007199254740991.000000000, toUInt64(18446744073709551615) != -9007199254740991.000000000, toUInt64(18446744073709551615) < -9007199254740991.000000000, toUInt64(18446744073709551615) <= -9007199254740991.000000000, toUInt64(18446744073709551615) > -9007199254740991.000000000, toUInt64(18446744073709551615) >= -9007199254740991.000000000, -9007199254740991.000000000 = toUInt64(18446744073709551615), -9007199254740991.000000000 != toUInt64(18446744073709551615), -9007199254740991.000000000 < toUInt64(18446744073709551615), -9007199254740991.000000000 <= toUInt64(18446744073709551615), -9007199254740991.000000000 > toUInt64(18446744073709551615), -9007199254740991.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-9007199254740992.000000000', 18446744073709551615 = -9007199254740992.000000000, 18446744073709551615 != -9007199254740992.000000000, 18446744073709551615 < -9007199254740992.000000000, 18446744073709551615 <= -9007199254740992.000000000, 18446744073709551615 > -9007199254740992.000000000, 18446744073709551615 >= -9007199254740992.000000000, -9007199254740992.000000000 = 18446744073709551615, -9007199254740992.000000000 != 18446744073709551615, -9007199254740992.000000000 < 18446744073709551615, -9007199254740992.000000000 <= 18446744073709551615, -9007199254740992.000000000 > 18446744073709551615, -9007199254740992.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -9007199254740992.000000000, toUInt64(18446744073709551615) != -9007199254740992.000000000, toUInt64(18446744073709551615) < -9007199254740992.000000000, toUInt64(18446744073709551615) <= -9007199254740992.000000000, toUInt64(18446744073709551615) > -9007199254740992.000000000, toUInt64(18446744073709551615) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt64(18446744073709551615), -9007199254740992.000000000 != toUInt64(18446744073709551615), -9007199254740992.000000000 < toUInt64(18446744073709551615), -9007199254740992.000000000 <= toUInt64(18446744073709551615), -9007199254740992.000000000 > toUInt64(18446744073709551615), -9007199254740992.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-9007199254740992.000000000', 18446744073709551615 = -9007199254740992.000000000, 18446744073709551615 != -9007199254740992.000000000, 18446744073709551615 < -9007199254740992.000000000, 18446744073709551615 <= -9007199254740992.000000000, 18446744073709551615 > -9007199254740992.000000000, 18446744073709551615 >= -9007199254740992.000000000, -9007199254740992.000000000 = 18446744073709551615, -9007199254740992.000000000 != 18446744073709551615, -9007199254740992.000000000 < 18446744073709551615, -9007199254740992.000000000 <= 18446744073709551615, -9007199254740992.000000000 > 18446744073709551615, -9007199254740992.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -9007199254740992.000000000, toUInt64(18446744073709551615) != -9007199254740992.000000000, toUInt64(18446744073709551615) < -9007199254740992.000000000, toUInt64(18446744073709551615) <= -9007199254740992.000000000, toUInt64(18446744073709551615) > -9007199254740992.000000000, toUInt64(18446744073709551615) >= -9007199254740992.000000000, -9007199254740992.000000000 = toUInt64(18446744073709551615), -9007199254740992.000000000 != toUInt64(18446744073709551615), -9007199254740992.000000000 < toUInt64(18446744073709551615), -9007199254740992.000000000 <= toUInt64(18446744073709551615), -9007199254740992.000000000 > toUInt64(18446744073709551615), -9007199254740992.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-9007199254740994.000000000', 18446744073709551615 = -9007199254740994.000000000, 18446744073709551615 != -9007199254740994.000000000, 18446744073709551615 < -9007199254740994.000000000, 18446744073709551615 <= -9007199254740994.000000000, 18446744073709551615 > -9007199254740994.000000000, 18446744073709551615 >= -9007199254740994.000000000, -9007199254740994.000000000 = 18446744073709551615, -9007199254740994.000000000 != 18446744073709551615, -9007199254740994.000000000 < 18446744073709551615, -9007199254740994.000000000 <= 18446744073709551615, -9007199254740994.000000000 > 18446744073709551615, -9007199254740994.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -9007199254740994.000000000, toUInt64(18446744073709551615) != -9007199254740994.000000000, toUInt64(18446744073709551615) < -9007199254740994.000000000, toUInt64(18446744073709551615) <= -9007199254740994.000000000, toUInt64(18446744073709551615) > -9007199254740994.000000000, toUInt64(18446744073709551615) >= -9007199254740994.000000000, -9007199254740994.000000000 = toUInt64(18446744073709551615), -9007199254740994.000000000 != toUInt64(18446744073709551615), -9007199254740994.000000000 < toUInt64(18446744073709551615), -9007199254740994.000000000 <= toUInt64(18446744073709551615), -9007199254740994.000000000 > toUInt64(18446744073709551615), -9007199254740994.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '104.000000000', 18446744073709551615 = 104.000000000, 18446744073709551615 != 104.000000000, 18446744073709551615 < 104.000000000, 18446744073709551615 <= 104.000000000, 18446744073709551615 > 104.000000000, 18446744073709551615 >= 104.000000000, 104.000000000 = 18446744073709551615, 104.000000000 != 18446744073709551615, 104.000000000 < 18446744073709551615, 104.000000000 <= 18446744073709551615, 104.000000000 > 18446744073709551615, 104.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 104.000000000, toUInt64(18446744073709551615) != 104.000000000, toUInt64(18446744073709551615) < 104.000000000, toUInt64(18446744073709551615) <= 104.000000000, toUInt64(18446744073709551615) > 104.000000000, toUInt64(18446744073709551615) >= 104.000000000, 104.000000000 = toUInt64(18446744073709551615), 104.000000000 != toUInt64(18446744073709551615), 104.000000000 < toUInt64(18446744073709551615), 104.000000000 <= toUInt64(18446744073709551615), 104.000000000 > toUInt64(18446744073709551615), 104.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-4503599627370496.000000000', 18446744073709551615 = -4503599627370496.000000000, 18446744073709551615 != -4503599627370496.000000000, 18446744073709551615 < -4503599627370496.000000000, 18446744073709551615 <= -4503599627370496.000000000, 18446744073709551615 > -4503599627370496.000000000, 18446744073709551615 >= -4503599627370496.000000000, -4503599627370496.000000000 = 18446744073709551615, -4503599627370496.000000000 != 18446744073709551615, -4503599627370496.000000000 < 18446744073709551615, -4503599627370496.000000000 <= 18446744073709551615, -4503599627370496.000000000 > 18446744073709551615, -4503599627370496.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -4503599627370496.000000000, toUInt64(18446744073709551615) != -4503599627370496.000000000, toUInt64(18446744073709551615) < -4503599627370496.000000000, toUInt64(18446744073709551615) <= -4503599627370496.000000000, toUInt64(18446744073709551615) > -4503599627370496.000000000, toUInt64(18446744073709551615) >= -4503599627370496.000000000, -4503599627370496.000000000 = toUInt64(18446744073709551615), -4503599627370496.000000000 != toUInt64(18446744073709551615), -4503599627370496.000000000 < toUInt64(18446744073709551615), -4503599627370496.000000000 <= toUInt64(18446744073709551615), -4503599627370496.000000000 > toUInt64(18446744073709551615), -4503599627370496.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-0.500000000', 18446744073709551615 = -0.500000000, 18446744073709551615 != -0.500000000, 18446744073709551615 < -0.500000000, 18446744073709551615 <= -0.500000000, 18446744073709551615 > -0.500000000, 18446744073709551615 >= -0.500000000, -0.500000000 = 18446744073709551615, -0.500000000 != 18446744073709551615, -0.500000000 < 18446744073709551615, -0.500000000 <= 18446744073709551615, -0.500000000 > 18446744073709551615, -0.500000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -0.500000000, toUInt64(18446744073709551615) != -0.500000000, toUInt64(18446744073709551615) < -0.500000000, toUInt64(18446744073709551615) <= -0.500000000, toUInt64(18446744073709551615) > -0.500000000, toUInt64(18446744073709551615) >= -0.500000000, -0.500000000 = toUInt64(18446744073709551615), -0.500000000 != toUInt64(18446744073709551615), -0.500000000 < toUInt64(18446744073709551615), -0.500000000 <= toUInt64(18446744073709551615), -0.500000000 > toUInt64(18446744073709551615), -0.500000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '0.500000000', 18446744073709551615 = 0.500000000, 18446744073709551615 != 0.500000000, 18446744073709551615 < 0.500000000, 18446744073709551615 <= 0.500000000, 18446744073709551615 > 0.500000000, 18446744073709551615 >= 0.500000000, 0.500000000 = 18446744073709551615, 0.500000000 != 18446744073709551615, 0.500000000 < 18446744073709551615, 0.500000000 <= 18446744073709551615, 0.500000000 > 18446744073709551615, 0.500000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 0.500000000, toUInt64(18446744073709551615) != 0.500000000, toUInt64(18446744073709551615) < 0.500000000, toUInt64(18446744073709551615) <= 0.500000000, toUInt64(18446744073709551615) > 0.500000000, toUInt64(18446744073709551615) >= 0.500000000, 0.500000000 = toUInt64(18446744073709551615), 0.500000000 != toUInt64(18446744073709551615), 0.500000000 < toUInt64(18446744073709551615), 0.500000000 <= toUInt64(18446744073709551615), 0.500000000 > toUInt64(18446744073709551615), 0.500000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-1.500000000', 18446744073709551615 = -1.500000000, 18446744073709551615 != -1.500000000, 18446744073709551615 < -1.500000000, 18446744073709551615 <= -1.500000000, 18446744073709551615 > -1.500000000, 18446744073709551615 >= -1.500000000, -1.500000000 = 18446744073709551615, -1.500000000 != 18446744073709551615, -1.500000000 < 18446744073709551615, -1.500000000 <= 18446744073709551615, -1.500000000 > 18446744073709551615, -1.500000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -1.500000000, toUInt64(18446744073709551615) != -1.500000000, toUInt64(18446744073709551615) < -1.500000000, toUInt64(18446744073709551615) <= -1.500000000, toUInt64(18446744073709551615) > -1.500000000, toUInt64(18446744073709551615) >= -1.500000000, -1.500000000 = toUInt64(18446744073709551615), -1.500000000 != toUInt64(18446744073709551615), -1.500000000 < toUInt64(18446744073709551615), -1.500000000 <= toUInt64(18446744073709551615), -1.500000000 > toUInt64(18446744073709551615), -1.500000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '1.500000000', 18446744073709551615 = 1.500000000, 18446744073709551615 != 1.500000000, 18446744073709551615 < 1.500000000, 18446744073709551615 <= 1.500000000, 18446744073709551615 > 1.500000000, 18446744073709551615 >= 1.500000000, 1.500000000 = 18446744073709551615, 1.500000000 != 18446744073709551615, 1.500000000 < 18446744073709551615, 1.500000000 <= 18446744073709551615, 1.500000000 > 18446744073709551615, 1.500000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 1.500000000, toUInt64(18446744073709551615) != 1.500000000, toUInt64(18446744073709551615) < 1.500000000, toUInt64(18446744073709551615) <= 1.500000000, toUInt64(18446744073709551615) > 1.500000000, toUInt64(18446744073709551615) >= 1.500000000, 1.500000000 = toUInt64(18446744073709551615), 1.500000000 != toUInt64(18446744073709551615), 1.500000000 < toUInt64(18446744073709551615), 1.500000000 <= toUInt64(18446744073709551615), 1.500000000 > toUInt64(18446744073709551615), 1.500000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '9007199254740992.000000000', 18446744073709551615 = 9007199254740992.000000000, 18446744073709551615 != 9007199254740992.000000000, 18446744073709551615 < 9007199254740992.000000000, 18446744073709551615 <= 9007199254740992.000000000, 18446744073709551615 > 9007199254740992.000000000, 18446744073709551615 >= 9007199254740992.000000000, 9007199254740992.000000000 = 18446744073709551615, 9007199254740992.000000000 != 18446744073709551615, 9007199254740992.000000000 < 18446744073709551615, 9007199254740992.000000000 <= 18446744073709551615, 9007199254740992.000000000 > 18446744073709551615, 9007199254740992.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 9007199254740992.000000000, toUInt64(18446744073709551615) != 9007199254740992.000000000, toUInt64(18446744073709551615) < 9007199254740992.000000000, toUInt64(18446744073709551615) <= 9007199254740992.000000000, toUInt64(18446744073709551615) > 9007199254740992.000000000, toUInt64(18446744073709551615) >= 9007199254740992.000000000, 9007199254740992.000000000 = toUInt64(18446744073709551615), 9007199254740992.000000000 != toUInt64(18446744073709551615), 9007199254740992.000000000 < toUInt64(18446744073709551615), 9007199254740992.000000000 <= toUInt64(18446744073709551615), 9007199254740992.000000000 > toUInt64(18446744073709551615), 9007199254740992.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '2251799813685247.500000000', 18446744073709551615 = 2251799813685247.500000000, 18446744073709551615 != 2251799813685247.500000000, 18446744073709551615 < 2251799813685247.500000000, 18446744073709551615 <= 2251799813685247.500000000, 18446744073709551615 > 2251799813685247.500000000, 18446744073709551615 >= 2251799813685247.500000000, 2251799813685247.500000000 = 18446744073709551615, 2251799813685247.500000000 != 18446744073709551615, 2251799813685247.500000000 < 18446744073709551615, 2251799813685247.500000000 <= 18446744073709551615, 2251799813685247.500000000 > 18446744073709551615, 2251799813685247.500000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 2251799813685247.500000000, toUInt64(18446744073709551615) != 2251799813685247.500000000, toUInt64(18446744073709551615) < 2251799813685247.500000000, toUInt64(18446744073709551615) <= 2251799813685247.500000000, toUInt64(18446744073709551615) > 2251799813685247.500000000, toUInt64(18446744073709551615) >= 2251799813685247.500000000, 2251799813685247.500000000 = toUInt64(18446744073709551615), 2251799813685247.500000000 != toUInt64(18446744073709551615), 2251799813685247.500000000 < toUInt64(18446744073709551615), 2251799813685247.500000000 <= toUInt64(18446744073709551615), 2251799813685247.500000000 > toUInt64(18446744073709551615), 2251799813685247.500000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '2251799813685248.500000000', 18446744073709551615 = 2251799813685248.500000000, 18446744073709551615 != 2251799813685248.500000000, 18446744073709551615 < 2251799813685248.500000000, 18446744073709551615 <= 2251799813685248.500000000, 18446744073709551615 > 2251799813685248.500000000, 18446744073709551615 >= 2251799813685248.500000000, 2251799813685248.500000000 = 18446744073709551615, 2251799813685248.500000000 != 18446744073709551615, 2251799813685248.500000000 < 18446744073709551615, 2251799813685248.500000000 <= 18446744073709551615, 2251799813685248.500000000 > 18446744073709551615, 2251799813685248.500000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 2251799813685248.500000000, toUInt64(18446744073709551615) != 2251799813685248.500000000, toUInt64(18446744073709551615) < 2251799813685248.500000000, toUInt64(18446744073709551615) <= 2251799813685248.500000000, toUInt64(18446744073709551615) > 2251799813685248.500000000, toUInt64(18446744073709551615) >= 2251799813685248.500000000, 2251799813685248.500000000 = toUInt64(18446744073709551615), 2251799813685248.500000000 != toUInt64(18446744073709551615), 2251799813685248.500000000 < toUInt64(18446744073709551615), 2251799813685248.500000000 <= toUInt64(18446744073709551615), 2251799813685248.500000000 > toUInt64(18446744073709551615), 2251799813685248.500000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '1152921504606846976.000000000', 18446744073709551615 = 1152921504606846976.000000000, 18446744073709551615 != 1152921504606846976.000000000, 18446744073709551615 < 1152921504606846976.000000000, 18446744073709551615 <= 1152921504606846976.000000000, 18446744073709551615 > 1152921504606846976.000000000, 18446744073709551615 >= 1152921504606846976.000000000, 1152921504606846976.000000000 = 18446744073709551615, 1152921504606846976.000000000 != 18446744073709551615, 1152921504606846976.000000000 < 18446744073709551615, 1152921504606846976.000000000 <= 18446744073709551615, 1152921504606846976.000000000 > 18446744073709551615, 1152921504606846976.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 1152921504606846976.000000000, toUInt64(18446744073709551615) != 1152921504606846976.000000000, toUInt64(18446744073709551615) < 1152921504606846976.000000000, toUInt64(18446744073709551615) <= 1152921504606846976.000000000, toUInt64(18446744073709551615) > 1152921504606846976.000000000, toUInt64(18446744073709551615) >= 1152921504606846976.000000000, 1152921504606846976.000000000 = toUInt64(18446744073709551615), 1152921504606846976.000000000 != toUInt64(18446744073709551615), 1152921504606846976.000000000 < toUInt64(18446744073709551615), 1152921504606846976.000000000 <= toUInt64(18446744073709551615), 1152921504606846976.000000000 > toUInt64(18446744073709551615), 1152921504606846976.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-1152921504606846976.000000000', 18446744073709551615 = -1152921504606846976.000000000, 18446744073709551615 != -1152921504606846976.000000000, 18446744073709551615 < -1152921504606846976.000000000, 18446744073709551615 <= -1152921504606846976.000000000, 18446744073709551615 > -1152921504606846976.000000000, 18446744073709551615 >= -1152921504606846976.000000000, -1152921504606846976.000000000 = 18446744073709551615, -1152921504606846976.000000000 != 18446744073709551615, -1152921504606846976.000000000 < 18446744073709551615, -1152921504606846976.000000000 <= 18446744073709551615, -1152921504606846976.000000000 > 18446744073709551615, -1152921504606846976.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -1152921504606846976.000000000, toUInt64(18446744073709551615) != -1152921504606846976.000000000, toUInt64(18446744073709551615) < -1152921504606846976.000000000, toUInt64(18446744073709551615) <= -1152921504606846976.000000000, toUInt64(18446744073709551615) > -1152921504606846976.000000000, toUInt64(18446744073709551615) >= -1152921504606846976.000000000, -1152921504606846976.000000000 = toUInt64(18446744073709551615), -1152921504606846976.000000000 != toUInt64(18446744073709551615), -1152921504606846976.000000000 < toUInt64(18446744073709551615), -1152921504606846976.000000000 <= toUInt64(18446744073709551615), -1152921504606846976.000000000 > toUInt64(18446744073709551615), -1152921504606846976.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '-9223372036854786048.000000000', 18446744073709551615 = -9223372036854786048.000000000, 18446744073709551615 != -9223372036854786048.000000000, 18446744073709551615 < -9223372036854786048.000000000, 18446744073709551615 <= -9223372036854786048.000000000, 18446744073709551615 > -9223372036854786048.000000000, 18446744073709551615 >= -9223372036854786048.000000000, -9223372036854786048.000000000 = 18446744073709551615, -9223372036854786048.000000000 != 18446744073709551615, -9223372036854786048.000000000 < 18446744073709551615, -9223372036854786048.000000000 <= 18446744073709551615, -9223372036854786048.000000000 > 18446744073709551615, -9223372036854786048.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = -9223372036854786048.000000000, toUInt64(18446744073709551615) != -9223372036854786048.000000000, toUInt64(18446744073709551615) < -9223372036854786048.000000000, toUInt64(18446744073709551615) <= -9223372036854786048.000000000, toUInt64(18446744073709551615) > -9223372036854786048.000000000, toUInt64(18446744073709551615) >= -9223372036854786048.000000000, -9223372036854786048.000000000 = toUInt64(18446744073709551615), -9223372036854786048.000000000 != toUInt64(18446744073709551615), -9223372036854786048.000000000 < toUInt64(18446744073709551615), -9223372036854786048.000000000 <= toUInt64(18446744073709551615), -9223372036854786048.000000000 > toUInt64(18446744073709551615), -9223372036854786048.000000000 >= toUInt64(18446744073709551615) ;
SELECT '18446744073709551615', '9223372036854786048.000000000', 18446744073709551615 = 9223372036854786048.000000000, 18446744073709551615 != 9223372036854786048.000000000, 18446744073709551615 < 9223372036854786048.000000000, 18446744073709551615 <= 9223372036854786048.000000000, 18446744073709551615 > 9223372036854786048.000000000, 18446744073709551615 >= 9223372036854786048.000000000, 9223372036854786048.000000000 = 18446744073709551615, 9223372036854786048.000000000 != 18446744073709551615, 9223372036854786048.000000000 < 18446744073709551615, 9223372036854786048.000000000 <= 18446744073709551615, 9223372036854786048.000000000 > 18446744073709551615, 9223372036854786048.000000000 >= 18446744073709551615 , toUInt64(18446744073709551615) = 9223372036854786048.000000000, toUInt64(18446744073709551615) != 9223372036854786048.000000000, toUInt64(18446744073709551615) < 9223372036854786048.000000000, toUInt64(18446744073709551615) <= 9223372036854786048.000000000, toUInt64(18446744073709551615) > 9223372036854786048.000000000, toUInt64(18446744073709551615) >= 9223372036854786048.000000000, 9223372036854786048.000000000 = toUInt64(18446744073709551615), 9223372036854786048.000000000 != toUInt64(18446744073709551615), 9223372036854786048.000000000 < toUInt64(18446744073709551615), 9223372036854786048.000000000 <= toUInt64(18446744073709551615), 9223372036854786048.000000000 > toUInt64(18446744073709551615), 9223372036854786048.000000000 >= toUInt64(18446744073709551615) ;
SELECT '9223372036854775808', '0.000000000', 9223372036854775808 = 0.000000000, 9223372036854775808 != 0.000000000, 9223372036854775808 < 0.000000000, 9223372036854775808 <= 0.000000000, 9223372036854775808 > 0.000000000, 9223372036854775808 >= 0.000000000, 0.000000000 = 9223372036854775808, 0.000000000 != 9223372036854775808, 0.000000000 < 9223372036854775808, 0.000000000 <= 9223372036854775808, 0.000000000 > 9223372036854775808, 0.000000000 >= 9223372036854775808 , toUInt64(9223372036854775808) = 0.000000000, toUInt64(9223372036854775808) != 0.000000000, toUInt64(9223372036854775808) < 0.000000000, toUInt64(9223372036854775808) <= 0.000000000, toUInt64(9223372036854775808) > 0.000000000, toUInt64(9223372036854775808) >= 0.000000000, 0.000000000 = toUInt64(9223372036854775808), 0.000000000 != toUInt64(9223372036854775808), 0.000000000 < toUInt64(9223372036854775808), 0.000000000 <= toUInt64(9223372036854775808), 0.000000000 > toUInt64(9223372036854775808), 0.000000000 >= toUInt64(9223372036854775808) ;
SELECT '9223372036854775808', '-1.000000000', 9223372036854775808 = -1.000000000, 9223372036854775808 != -1.000000000, 9223372036854775808 < -1.000000000, 9223372036854775808 <= -1.000000000, 9223372036854775808 > -1.000000000, 9223372036854775808 >= -1.000000000, -1.000000000 = 9223372036854775808, -1.000000000 != 9223372036854775808, -1.000000000 < 9223372036854775808, -1.000000000 <= 9223372036854775808, -1.000000000 > 9223372036854775808, -1.000000000 >= 9223372036854775808 , toUInt64(9223372036854775808) = -1.000000000, toUInt64(9223372036854775808) != -1.000000000, toUInt64(9223372036854775808) < -1.000000000, toUInt64(9223372036854775808) <= -1.000000000, toUInt64(9223372036854775808) > -1.000000000, toUInt64(9223372036854775808) >= -1.000000000, -1.000000000 = toUInt64(9223372036854775808), -1.000000000 != toUInt64(9223372036854775808), -1.000000000 < toUInt64(9223372036854775808), -1.000000000 <= toUInt64(9223372036854775808), -1.000000000 > toUInt64(9223372036854775808), -1.000000000 >= toUInt64(9223372036854775808) ;
SELECT '9223372036854775808', '1.000000000', 9223372036854775808 = 1.000000000, 9223372036854775808 != 1.000000000, 9223372036854775808 < 1.000000000, 9223372036854775808 <= 1.000000000, 9223372036854775808 > 1.000000000, 9223372036854775808 >= 1.000000000, 1.000000000 = 9223372036854775808, 1.000000000 != 9223372036854775808, 1.000000000 < 9223372036854775808, 1.000000000 <= 9223372036854775808, 1.000000000 > 9223372036854775808, 1.000000000 >= 9223372036854775808 , toUInt64(9223372036854775808) = 1.000000000, toUInt64(9223372036854775808) != 1.000000000, toUInt64(9223372036854775808) < 1.000000000, toUInt64(9223372036854775808) <= 1.000000000, toUInt64(9223372036854775808) > 1.000000000, toUInt64(9223372036854775808) >= 1.000000000, 1.000000000 = toUInt64(9223372036854775808), 1.000000000 != toUInt64(9223372036854775808), 1.000000000 < toUInt64(9223372036854775808), 1.000000000 <= toUInt64(9223372036854775808), 1.000000000 > toUInt64(9223372036854775808), 1.000000000 >= toUInt64(9223372036854775808) ;
SELECT '9223372036854775808', '18446744073709551616.000000000', 9223372036854775808 = 18446744073709551616.000000000, 9223372036854775808 != 18446744073709551616.000000000, 9223372036854775808 < 18446744073709551616.000000000, 9223372036854775808 <= 18446744073709551616.000000000, 9223372036854775808 > 18446744073709551616.000000000, 9223372036854775808 >= 18446744073709551616.000000000, 18446744073709551616.000000000 = 9223372036854775808, 18446744073709551616.000000000 != 9223372036854775808, 18446744073709551616.000000000 < 9223372036854775808, 18446744073709551616.000000000 <= 9223372036854775808, 18446744073709551616.000000000 > 9223372036854775808, 18446744073709551616.000000000 >= 9223372036854775808 , toUInt64(9223372036854775808) = 18446744073709551616.000000000, toUInt64(9223372036854775808) != 18446744073709551616.000000000, toUInt64(9223372036854775808) < 18446744073709551616.000000000, toUInt64(9223372036854775808) <= 18446744073709551616.000000000, toUInt64(9223372036854775808) > 18446744073709551616.000000000, toUInt64(9223372036854775808) >= 18446744073709551616.000000000, 18446744073709551616.000000000 = toUInt64(9223372036854775808), 18446744073709551616.000000000 != toUInt64(9223372036854775808), 18446744073709551616.000000000 < toUInt64(9223372036854775808), 18446744073709551616.000000000 <= toUInt64(9223372036854775808), 18446744073709551616.000000000 > toUInt64(9223372036854775808), 18446744073709551616.000000000 >= toUInt64(9223372036854775808) ;

View File

@ -1,16 +1,16 @@
3 8 3 8
13 28
23 48 23 48
33 68 33 68
13 28
3 8 3 8
13 28
23 48 23 48
33 68 33 68
13 28
3 8 3 8
13 28
23 48 23 48
33 68 33 68
13 28
3 8 3 8
13 28
23 48 23 48
33 68 33 68
13 28

View File

@ -15,10 +15,10 @@ INSERT INTO union1 VALUES (11,12,13,14,15);
INSERT INTO union2 VALUES (21,22,23,24,25); INSERT INTO union2 VALUES (21,22,23,24,25);
INSERT INTO union3 VALUES (31,32,33,34,35); INSERT INTO union3 VALUES (31,32,33,34,35);
select b, sum(c) from ( select a, b, sum(c) as c from union2 where a>1 group by a,b UNION ALL select a, b, sum(c) as c from union2 where b>1 group by a, b ) as a group by b; select b, sum(c) from ( select a, b, sum(c) as c from union2 where a>1 group by a,b UNION ALL select a, b, sum(c) as c from union2 where b>1 group by a, b order by a, b) as a group by b order by b;
select b, sum(c) from ( select a, b, sum(c) as c from union1 where a>1 group by a,b UNION ALL select a, b, sum(c) as c from union2 where b>1 group by a, b ) as a group by b; select b, sum(c) from ( select a, b, sum(c) as c from union1 where a>1 group by a,b UNION ALL select a, b, sum(c) as c from union2 where b>1 group by a, b order by a, b) as a group by b order by b;
select b, sum(c) from ( select a, b, sum(c) as c from union1 where a>1 group by a,b UNION ALL select a, b, sum(c) as c from union1 where b>1 group by a, b ) as a group by b; select b, sum(c) from ( select a, b, sum(c) as c from union1 where a>1 group by a,b UNION ALL select a, b, sum(c) as c from union1 where b>1 group by a, b order by a, b) as a group by b order by b;
select b, sum(c) from ( select a, b, sum(c) as c from union2 where a>1 group by a,b UNION ALL select a, b, sum(c) as c from union3 where b>1 group by a, b ) as a group by b; select b, sum(c) from ( select a, b, sum(c) as c from union2 where a>1 group by a,b UNION ALL select a, b, sum(c) as c from union3 where b>1 group by a, b order by a, b) as a group by b order by b;
DROP TABLE union1; DROP TABLE union1;
DROP TABLE union2; DROP TABLE union2;

View File

@ -1 +1 @@
SELECT exp2(number) AS e2d, intExp2(number) AS e2i, e2d = e2i AS e2eq, exp10(number) AS e10d, intExp10(number) AS e10i, e10d = e10i AS e10eq FROM system.numbers LIMIT 64; SELECT exp2(number) AS e2d, intExp2(number) AS e2i, toUInt64(e2d) = e2i AS e2eq, exp10(number) AS e10d, intExp10(number) AS e10i, toString(e10d) = toString(e10i) AS e10eq FROM system.numbers LIMIT 64;

View File

@ -1,5 +1,4 @@
--------read-------- --------read--------
def [1,2] 2
abc [0] 1 abc [0] 1
def [1,2] 2 def [1,2] 2
abc [0] 1 abc [0] 1
@ -7,6 +6,7 @@ def [1,2] 2
abc [0] 1 abc [0] 1
def [1,2] 2 def [1,2] 2
abc [0] 1 abc [0] 1
def [1,2] 2
--------joinGet-------- --------joinGet--------
abc abc

View File

@ -22,10 +22,10 @@ INSERT INTO join_all_left VALUES ('abc', [0], 1), ('def', [1, 2], 2);
-- read from StorageJoin -- read from StorageJoin
SELECT '--------read--------'; SELECT '--------read--------';
SELECT * from join_any_inner; SELECT * from join_any_inner ORDER BY k;
SELECT * from join_any_left; SELECT * from join_any_left ORDER BY k;
SELECT * from join_all_inner; SELECT * from join_all_inner ORDER BY k;
SELECT * from join_all_left; SELECT * from join_all_left ORDER BY k;
-- create StorageJoin tables with customized settings -- create StorageJoin tables with customized settings

View File

@ -1,4 +1,4 @@
a \N 1
a b 1 a b 1
a \N 2 a \N 2
a \N 1
a b 1 a b 1

View File

@ -8,7 +8,7 @@ INSERT INTO rollup_having VALUES (NULL, NULL);
INSERT INTO rollup_having VALUES ('a', NULL); INSERT INTO rollup_having VALUES ('a', NULL);
INSERT INTO rollup_having VALUES ('a', 'b'); INSERT INTO rollup_having VALUES ('a', 'b');
SELECT a, b, count(*) FROM rollup_having GROUP BY a, b WITH ROLLUP HAVING a IS NOT NULL; SELECT a, b, count(*) FROM rollup_having GROUP BY a, b WITH ROLLUP HAVING a IS NOT NULL ORDER BY a, b;
SELECT a, b, count(*) FROM rollup_having GROUP BY a, b WITH ROLLUP HAVING a IS NOT NULL and b IS NOT NULL; SELECT a, b, count(*) FROM rollup_having GROUP BY a, b WITH ROLLUP HAVING a IS NOT NULL and b IS NOT NULL ORDER BY a, b;
DROP TABLE rollup_having; DROP TABLE rollup_having;

View File

@ -60,16 +60,10 @@ wait
echo "DROP TABLE concurrent_alter_column NO DELAY" | ${CLICKHOUSE_CLIENT} # NO DELAY has effect only for Atomic database echo "DROP TABLE concurrent_alter_column NO DELAY" | ${CLICKHOUSE_CLIENT} # NO DELAY has effect only for Atomic database
db_engine=`$CLICKHOUSE_CLIENT -q "SELECT engine FROM system.databases WHERE name='$CLICKHOUSE_DATABASE'"` # Wait for alters and check for deadlocks (in case of deadlock this loop will not finish)
if [[ $db_engine == "Atomic" ]]; then while true; do
# DROP is non-blocking, so wait for alters echo "SELECT * FROM system.processes WHERE query_id LIKE 'alter\\_00816\\_%'" | ${CLICKHOUSE_CLIENT} | grep -q -F 'alter' || break
while true; do
$CLICKHOUSE_CLIENT -q "SELECT c = 0 FROM (SELECT count() as c FROM system.processes WHERE query_id LIKE 'alter_00816_%')" | grep 1 > /dev/null && break;
sleep 1; sleep 1;
done done
fi
# Check for deadlocks
echo "SELECT * FROM system.processes WHERE query_id LIKE 'alter_00816_%'" | ${CLICKHOUSE_CLIENT}
echo 'did not crash' echo 'did not crash'

View File

@ -1,8 +1,8 @@
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0
1 1
0
1 1 1 1 1 1 1 1 1 1 1 1
2 2 0 0 0 0 2 2 0 0 0 0
2 2 0
1 1 1 1 1 1
2 2 0

View File

@ -13,22 +13,22 @@ insert into y values (1,1);
select s.a, s.a, s.b as s_b, s.b from t select s.a, s.a, s.b as s_b, s.b from t
left join s on s.a = t.a left join s on s.a = t.a
left join y on s.b = y.b left join y on s.b = y.b
order by t.a; order by t.a, s.a, s.b;
select max(s.a) from t select max(s.a) from t
left join s on s.a = t.a left join s on s.a = t.a
left join y on s.b = y.b left join y on s.b = y.b
group by t.a; group by t.a order by t.a;
select t.a, t.a as t_a, s.a, s.a as s_a, y.a, y.a as y_a from t select t.a, t.a as t_a, s.a, s.a as s_a, y.a, y.a as y_a from t
left join s on t.a = s.a left join s on t.a = s.a
left join y on y.b = s.b left join y on y.b = s.b
order by t.a; order by t.a, s.a, y.a;
select t.a, t.a as t_a, max(s.a) from t select t.a, t.a as t_a, max(s.a) from t
left join s on t.a = s.a left join s on t.a = s.a
left join y on y.b = s.b left join y on y.b = s.b
group by t.a; group by t.a order by t.a;
drop table t; drop table t;
drop table s; drop table s;

View File

@ -1,18 +1,18 @@
c d 1
a b 1 a b 1
c \N 1
a \N 1 a \N 1
c d 1
c \N 1
\N \N 2 \N \N 2
c 1
a 1 a 1
c 1
\N 2 \N 2
c d 1
a b 1 a b 1
c \N 1
a \N 1 a \N 1
c d 1
c \N 1
\N b 1 \N b 1
\N d 1 \N d 1
\N \N 2 \N \N 2
c 1
a 1 a 1
c 1
\N 2 \N 2

View File

@ -3,10 +3,10 @@ CREATE TABLE lc (a LowCardinality(Nullable(String)), b LowCardinality(Nullable(S
INSERT INTO lc VALUES ('a', 'b'); INSERT INTO lc VALUES ('a', 'b');
INSERT INTO lc VALUES ('c', 'd'); INSERT INTO lc VALUES ('c', 'd');
SELECT a, b, count(a) FROM lc GROUP BY a, b WITH ROLLUP; SELECT a, b, count(a) FROM lc GROUP BY a, b WITH ROLLUP ORDER BY a, b;
SELECT a, count(a) FROM lc GROUP BY a WITH ROLLUP; SELECT a, count(a) FROM lc GROUP BY a WITH ROLLUP ORDER BY a;
SELECT a, b, count(a) FROM lc GROUP BY a, b WITH CUBE; SELECT a, b, count(a) FROM lc GROUP BY a, b WITH CUBE ORDER BY a, b;
SELECT a, count(a) FROM lc GROUP BY a WITH CUBE; SELECT a, count(a) FROM lc GROUP BY a WITH CUBE ORDER BY a;
DROP TABLE if exists lc; DROP TABLE if exists lc;

Some files were not shown because too many files have changed in this diff Show More