TimonKK / clickhouse

NodeJS client for ClickHouse
Apache License 2.0
221 stars 87 forks source link

When the dynamic parameter of Uint64 exists in SQL, it returns null #125

Open allChangelove opened 2 years ago

allChangelove commented 2 years ago

When the dynamic parameter of Uint64 exists in SQL, it returns null

For example(JS):
const a = 2121212121212; (uint64,RPC for c++,The back-end interface is dynamically distributed to the front-end) const sql = select * from abc where value = ${a};

The execution result of this SQL is an empty array

But if I write a variable to death,For example: const sql = select * from abc where value = 2121212121212;

That's no problem,The table data can be obtained correctly

I don't know whether the SQL parsing failure is caused by the reference relationship,Because there is no difference between parameters and SQL strings

SEA99 commented 2 years ago

In JS Big values of UINT64 can not be stored in number. There are 64 bits in double float including exponent part.