mysql - mysql获取两个字段containsig之间的数字20digit长十进制数

mysql - mysql获取两个字段containsig之间的数字20digit长十进制数,第1张

我的表'serial'包含两个带start_serial_no和end_serial_no的字段 连续长约20位数(可能会有所不同)。

我在表格中有3个条目

mysql - mysql获取两个字段containsig之间的数字20digit长十进制数,enter image description here,第2张

用户将输入序列号,我必须找到它所属的起始和结束对。 我正在使用以下但它返回两个值作为输出(第1和第3) '899190150504778850'和'899190150504778950'的第三名。 相反,它应该只返回第二个。

SELECT *
FROM `serial`
WHERE '899190150504778850'
BETWEEN `start_serial_no`
AND `end_serial_no`

最佳答案:

1 个答案:

答案 0 :(得分:1)

更新:根据评论中的建议,似乎longint只能存储最多a range of 0 to 18446744073709551615 for unsigned numbers的数字,varchar可用于实现相同数量的数字。

-

您的代码完全正确。它输出你想要的 - 在这种情况下,它只返回第三组数据。

我通过创建确切的列并将确切的数据插入表中来尝试它。运行查询给了我想要的结果。

mysql - mysql获取两个字段containsig之间的数字20digit长十进制数,See screenshots of table structure, data and query result.,第3张

使用相同的查询再试一次。如果您遇到任何问题,请跟进。

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复