Sql开发技巧
简介
本文主要介绍下述几个技巧:
- 使用Row_Number分页
- 事务
- 根据条件刷选记录的技巧
分页
主要是使用了Row_Number()这个函数。一般如下:
declare @PageSize int;
declare @StartIndex int;
with MyTable_Paged as(
select
Row_Number() over(order by col_1) as '',
*
from
MyTalbe
where
condition
)
select * from MyTable_Paged
where RowNumber between StartIndex and StartIndex+@PageSize-1
事务
这个在复杂的sql语句中经常用,尤其配合存储过程。能够使一个操作原子化,防止只执行部分的操作。(当一个存在过程在执行的时候,是一条一条语句执行的,当出现错误的时候回停止执行,但是如果前面已经执行了一些语句,那么没有事务机制的话,该执行不能够回滚。)
begin try
begin tran
sqlstatement
commit tran
end try
begin catch
rollback tran
end catch
根据条件刷选记录
这个技巧在于当某一个条件可用可不用的情况下,不必使用众多的if等条件选择语句
比如需要筛选的条件如下:Name,Phone,Email
select * from MyTalbe where
([Name]=@Name or @Name is null)
and
(Phone=@Phone or @Phone is null)
and
(Email=@Email or @Email is null)
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!如果您想持续关注我的文章,请扫描二维码,关注马非码的微信公众号,我会将我的文章推送给您,并和您一起分享我日常阅读过的优质文章。
本文版权归作者和博客园共有,来源网址:http://www.cnblogs.com/marvin/欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南