SqlServer

1.SqlServer数据库没有Limit函数如何分页查询?1】用offset #{index} rows fetch next #{batchSize} rows only;2】用TOP关键字

先说第二种方式:(效率比第一种方式较低)

在这里插入图片描述

再说第一种方式:(效率比第二种方式较高)

此种语法必须加order by排序
select a.memberid,a.membershipid,a.LoyaltyProgramID,a.PhoneNumber from dbo.bak_memberid_delete_20210818_copy1 as a
order by a.memberid ASC
offset 10 rows fetch next 1000 rows only;
在这里插入图片描述
batchSize 是自定义的每页显示条数,假如是10000条,即batchSize=10000;

index 是偏移量,第一页偏移量是0 * batchSize是index=0,第二页偏移量是1 * batchSize是index=10000,依次类推。

2.字符串字段查询区分大小写

select
*
from tb_user
where
userName collate Chinese_PRC_CS_AS_WS = ‘Drinks’
and passWord = ‘123’
是否区分大小写与排序规则有关,排序规则中各部分含义如下所示:
举例分析 Chinese_PRC_CS_AI_WS   
前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。   
排序规则的后半部份即后缀 含义:   
_BIN 二进制排序    www.2cto.com
_CI(CS) 是否区分大小写,CI不区分,CS区分   
_AI(AS) 是否区分重音,AI不区分,AS区分    
_KI(KS) 是否区分假名类型,KI不区分,KS区分    
_WI(WS) 是否区分宽度 WI不区分,WS区分 
区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。  
区分重音:如果想让比较将重音和非重音字母视为不等,请选择该选项。如果选择该选项,比较还将重音不同的字 母视为不等。  
区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。   
区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项


format函数

select count(1) from guest.Import_Member_Excel where
FORMAT(CreateDate,‘yyyy-MM-dd’) = ‘2021-09-16’ ;
– 2021-09-16 13:40:11.073 20条数据


isnull(参数1,参数2),判断参数1是否为NULL,如果是,返回参数2,否则返回参数1。


group by … having count(1) > 1

select a.PhoneNumber as phoneNumber,a.MembershipID as membershipID,
    a.LoyaltyProgramID as loyaltyProgramID,count(1) as duplicateNum from
    (
    (select * from guest.Import_Member_Excel where IsDeleted = '0' and State='2')
    union all
    (select * from guest.Import_Member_Excel where id in
    <foreach collection="idList" item="id" separator="," open="(" close=")">
      #{id}
    </foreach>
    and State='1' and IsDeleted='0')
    ) as a
    GROUP BY a.PhoneNumber,a.MembershipID,a.LoyaltyProgramID HAVING count(1) > 1

sqlserver设置主键自增

在这里插入图片描述


在这里插入图片描述


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值