用手机怎么点亮qq勋章:问一下,关于Sql问题啊

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/01 02:03:20
有一个人物表People,某索引的字段叫ID,它是数字型的。
如,这是它的数据

FORM:People
ID Name

1 bzm
2 ddf
4 fdsa
8 dfas
...

然后,有这么一个常量
Default A="1,2,1,1,2,4"

根据常量,我得到这么的SQL语句
SELECT * FROM People WHERE ID=1 or ID=2 or ID=1 or ID=1 or ID=2 or ID=4

当然,我用程序控制,也可把这常量转换成
a="1,2,4"
那么,SQL就可成为
SELECT * FROM People WHERE ID=1 or ID=2 or ID=4

显然,第二种SQL理论上,会更高效些。

但,我的问题就是,第一种,会有多低效
因为,在程序控制把常量换成“不重复”的队列,也要花费CPU
如果我直接用第一种。会不会比第二种更快些?

这里只是举的例子说明,在我现在面对的情况下,会出现非常多、而杂的这样的常量,作为SQL的条件。

开发环境:ASP + Access

access 数据库针对小型数据要求的用户而言,所以基本上没有什么区别。

如果数据量不是万级的,根本看不出来

基本可以忽略,建立适当的索引和优化你的sql语句才是关键

用分步sql语句会更好一些