我正在使用LIKE
针对浮点字段返回匹配的数字结果。似乎一旦小数点左侧的位数超过 4 位,则不会返回与我在小数点右侧的搜索项匹配的值。这是说明情况的示例:
CREATE TABLE number_like_test (
num [FLOAT] NULL
)
INSERT INTO number_like_test (num) VALUES (1234.56)
INSERT INTO number_like_test (num) VALUES (3457.68)
INSERT INTO number_like_test (num) VALUES (13457.68)
INSERT INTO number_like_test (num) VALUES (1234.76)
INSERT INTO number_like_test (num) VALUES (23456.78)
SELECT num FROM number_like_test
WHERE num LIKE '%68%'
该查询不返回值为 12357.68 的记录,但它确实返回值为 3457.68 的记录。同样使用 78 而不是 68 运行查询不会返回 23456.78 记录,但使用 76 会返回 1234.76 记录。
所以要问这个问题:为什么有更大的数字会导致这些结果发生变化?如何更改查询以获得预期结果?