sql语句的问题,大家帮我一下~

来源:百度知道 编辑:UC知道 时间:2024/05/11 17:32:12
请帮我看一下,6.3.4的最后第3题到底错在哪

update stu set s_age=s_age-1 where s_no like ?6* and s_no like ???1*

我写错在哪了?

将表stu中所有的s_no值的第二和第四位分别为 ‘6’和 ‘1’的记录的s_age字段值-1
有答案吗?有正确写法吗?

update stu set s_age=s_age-1 where s_no like '_6*' and s_no like '___1*'

之前在百度知道里,没有回答过问题,今天是第一次来回答,结果发现好多人都很不负责任。人家虚心的请大家请教,如果有人不会就不要回答,免得误人子弟。
即使字段是数字,也是可以用like来进行比较的,在理论上是不可以的,但是这个Sql Server已经在内部做了。完全是可以的。
update stu set s_age=s_age-1 where s_no like ‘_6%’ and s_no like '___1%',(注:我记得SQL里面的通配符只有 %,_两个,前者代表任意个字符,后者只能代表一个字符)

update stu set s_age=s_age-1 where s_no like‘ _6* or s_no ‘like ___1*’

_是表示一个未知字符的

看了楼下的回复,改下答复。
sql server里可以,oracle里也是可以的。

这一定是错的
因为s_no是数字 不是字符串组成的