例如在我的表单中,地址字段就在那里。它将存储在数据库的换行符中(如果我单击输入并在地址字段中添加文本)。现在我想搜索完整的地址搜索。结果将无法获取。我的查询就像这样
select * from contacts where address like '69 TEXT STREET,4th Floor boston 2TN'
我在stackoverflow中看到了一些帖子。我用来替换列中的换行符的是
REPLACE(REPLACE(address, '\r', ''), '\n', '')
如果我在我的查询中使用这样的数据,则不会检索
select * from contacts where REPLACE(REPLACE(address, '\r', ''), '\n', '') like '69 TEXT STREET,4th Floor boston 2TN'
我需要准确的搜索结果。谢谢提前
答案 0 :(得分:1)
您应该用空格替换换行符,而不是空字符串
REPLACE(REPLACE(address, '\r\n', ' '), '\n', ' ')
因为如果用户输入
1 Microsoft Way
Redmont
然后搜索
1 Microsoft Way Redmont
你使用她使用换行的空间。此外,您可能应该从查询和数据库中删除所有逗号等,以匹配
1 Microsoft Way, Redmont
答案 1 :(得分:0)
尝试使用'%搜索项%'这样.. ..
从联系人中选择*替换(替换(地址,' \ r',''),' \ n','&# 39;)喜欢'%69 TEXT STREET,4楼波士顿2TN%'