数据库查询效率,使用union和or的全表扫描问题
比如我有一个表T,里面的属性为{id,name,num},id为自增主键
问题1:我要把num =10 、20、30的数据库条目都查出来
select id from t where num=10 or num=20 or num=30
select id from t where num=10
union all
select id from t where num=20
union all
select id from t where num=30
哪种效率高,两种查询方法进行了全表扫描的次数是几次?
问题2:我要把name=‘小明’的条目中的num值查出来相加的“和”,再将这个“和”作为一个新num值在数据库里添加一条新纪录,要怎么写sql语句?
假如数据库中小明的记录有三条值{小明,10} {小明,20} {小明,30},即要将{小明,60}添加进数据库