SQL LIKE问题,它选择1,10和11,如果我想从我的user_id's中选择1


SQL LIKE issue it selects 1, 10 and 11 if i want to select 1 from my user_id's

我不太熟悉SQL,现在我的查询有问题,它让我发疯,我有11条id记录,id只是1,2,3 ....现在,如果我有这个查询,我希望它只输出id为1的记录但它也输出记录10和11

这是我的查询:

SELECT * FROM products WHERE id LIKE ?

, bind参数为:

$id

在本例中为1 ($_GET['id'])

Thanks in Advance

Like执行模式匹配,并与通配符键一起使用以查找类似的结果。您正在寻找一个确切的值,所以只需直接与等号进行比较:

SELECT * FROM products WHERE id =
使用like,你可以找到任何包含1 的内容
id like '%1%'

或两位数字,其中第一位是1

id like '1_'

这里是关于TSQL的like操作符的文档。但是我认为你只需要……https://msdn.microsoft.com/en-us/library/ms179859.aspx

尝试用"="代替"LIKE"