下面是我的表结构
Mobile_Number_Start | Mobile_Number_End
005555 | 006565
016565 | 017575
018585 | 019595
现在,我必须根据用户输入手机号码的开始还是结束来搜索记录。他还可以在任一列中输入数字,但不能输入完整的数字
假设用户输入01
,则记录表将输出显示为
Mobile_Number_Start | Mobile_Number_End
016565 | 017575
018585 | 019595
因此,我无法创建有效的查询 这是我的查询内容
Select * from table_name where mobile_number_start is less than value entered in start and mobile_number_end is greater than value in mobilenumberend
我已经通过构建规范构建器类并使用
中的规范来使用存储库的findall函数执行了此操作findAll(specification)
当用户输入手机号码的一部分而不是完整的电话号码时,我在写查询时需要帮助
答案 0 :(得分:0)
您可以在查询中使用 Like 运算符
SELECT *
FROM table_name
WHERE mobile_number_start LIKE '01%' and mobile_number_end LIKE '%01'
答案 1 :(得分:0)
尝试这个。
SELECT *
FROM table_name
WHERE CAST(mobile_number_start as CHAR) LIKE '01%'
and CAST(mobile_number_end as CHAR) LIKE '%01'
答案 2 :(得分:0)
您可以使用like运算符进行比较,
SELECT * FROM table WHERE start_number LIKE '1%' and end_number LIKE '%1';