最近的两条sql效率优化心得
第一条:
select * from where field in (1,2,3) 这种写法应该舍弃了,而应该这样写:
select * from table where field = 1 or field = 2 or field = 3
为什么呢?
凡事只有做过才知道,自己建个表,插入10W条测试数据,用sql测试一下便知,因为工作便利,我在产品机和外网测试机都已经测试过,所以建议以后不用in了,改用or
第二条:
like 与 regexp
如你所知:
like是匹配任意字符,任意位数,而regexp是mysql的正则匹配函数
同上,今天测试,效率对比立现,改用regexp,摒弃like
rlike是regexp的别名,很多人也习惯rlike,看个人习惯
相关文档:
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
......
create table tb (ptoid int,proclassid int,proname varchar(10))
insert tb
select 1,1,'衣服1'
union all
select 2,2,'衣服2'
union all
select 3,3,'衣服3'
union all
select 4,3,'衣服4'
union all
select 5,2,'衣服5'
union all
select 6,2,'衣服6'
union all
select 7,2,'衣服7'
union all
select 8 ......
Standard Security:
"Data Source=Aron1;Initial
Catalog=pubs;User Id=sa;Password=asdasd;"
- or -
"Server=Aron1;Database=pubs;User
ID=sa;Pass ......
Microsoft Access 数据类型
数据类型
描述
存储
Text
用于文本或文本与数字的组合。最多 255 个字符。
Memo
Memo 用于更大数量的文本。最多存储 65,536 个字符。
注释:无法对 memo 字段进行排序。不过它们是可搜索的。
Byte
允许 0 到 255 的数字。
1 字节
Integer
允许介于 -32,768 到 32 ......
一步一步学Linq to sql(一):预备知识
一步一步学Linq to sql(二):DataContext与实体
一步一步学Linq to sql(三):增删改
一步一步学Linq to sql(四):查询句法
一步一步学Linq to sql(五):存储过程
一步一步学Linq to sql(六):探究特性
一步一步学Linq to sql(七):并发与事务 ......