SqlServer和PostgreSQL的两点差异

本文对比了SqlServer与PostgreSQL在批量数据插入及删除方面的差异。SqlServer在批量插入数据时存在1000行限制,而PostgreSQL则无此限制。在删除大量数据时,SqlServer可以通过分批删除的方式进行,但PostgreSQL需要使用特定的SQL语句实现类似功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

※差异1

SqlServer利用Insert Into tablename values (a,b),(a1,b1),...语句批量插入数据时,有1000行以内的制限。

https://msdn.microsoft.com/ja-jp/library/dd776382.aspx

PostgreSQL没有相关的制限,一次插入10万条都可以。

※差异2

SqlServer删除数据时,如果数据量很大,可以分批量一次一次删除

Delete Top 1000000 From tableName where ...

而PostgreSQL貌似不支持这种方式。

只能用 以下语句

Delete From TableName where column1 In (Select * From TableName  Where where_str Limmit 1000000)

但是这样还是有缺陷,这条语句的column1只能针对有唯一性约束的列才能真正达到目标,精确删除100万条数据。如果对于没有主键并且有多列值可能重复的情况,这样还是行不通。

转载于:https://my.oschina.net/mj23/blog/753881

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值