与使用SQL Server匹配字符串的“=”相似
发布时间:2020-05-24 13:45:24 所属栏目:MsSql 来源:互联网
导读:每当我编写一个存储过程来根据字符串变量(varchar,nvarchar,char)选择数据时,我会有类似的东西: procedure dbo.p_get_user_by_username( @username nvarchar(256)asbegin select u.username ,u.email --,etc
|
每当我编写一个存储过程来根据字符串变量(varchar,nvarchar,char)选择数据时,我会有类似的东西: procedure dbo.p_get_user_by_username(
@username nvarchar(256)
as
begin
select
u.username,u.email
--,etc
from
sampleUserTable u
where
u.username = @username
end
所以换句话说就是匹配我所拥有的记录 u.username = @username 但有时我会遇到使用LIKE代替=的代码 u.username like(@username) 你什么时候用它? 编辑 谢谢你的回答. 我认为我需要澄清一下,我真正想要问的是:如果可能存在这样的情况,那么首选使用“=”代替精确的字符串匹配.从答案我可以说不会有. 解决方法你是对的.除非您正在进行外卡匹配,否则使用LIKE没有任何好处.此外,在没有通配符的情况下使用它可能会导致使用效率低下的查询计划.(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
