这些是我的表格栏目:
contact_id, contact_number
我要在该表contactInfo
中搜索一个号码。
我的表格中有这种类型的条目
contact_id contact_number
1 1234567890
2 2345678901
和numberToSearch
可以采用任何此类格式+911234567890
或1234567890
我正在使用此查询
Select * from contactInfo where contact_number like numberToSearch;
当contact_number
和numberToSearch
相同时,此查询可以正常运行。
但是当numberToSearch
大于contact_number
时,它找不到数字。
请建议我应该怎样做才能匹配这种模式? numberToFind
的最后一位数字必须与contact_number
匹配。
答案 0 :(得分:2)
由于numberToSearch
是包含联系号码作为子字符串的数字的更长版本,我认为您希望搜索条件相反:
Select * from contactInfo where numberToSearch like '%'+contact_number+'%';
此SQL Server版本。在Oracle或MySQL中使用CONCAT('%', contact_number, '%')
答案 1 :(得分:0)
您必须搜索搜索字符串中的数字,然后您必须编写如下
之类的查询Select * from contactInfo where contact_number like '%numberToSearch%';