文档章节

SqlServer和PostgreSQL的两点差异

黄裳23
 黄裳23
发布于 2016/09/30 16:39
字数 213
阅读 18
收藏 0

※差异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万条数据。如果对于没有主键并且有多列值可能重复的情况,这样还是行不通。

© 著作权归作者所有

共有 人打赏支持
黄裳23
粉丝 2
博文 53
码字总数 9420
作品 0
西安
高级程序员
加载中

评论(2)

黄裳23
黄裳23
终于找到了代替方案,性能得到了大幅的优化
DELETE FROM tableNameA WHERE Datetime = any (array(SELECT Datetime FROM tableNameA WHERE ... LIMIT 1000000))
黄裳23
黄裳23
DELETE FROM {0} WHERE (col1, col2, col3, col4, col5...) IN (SELECT * From {1} WHERE {2} LIMIT {3}
经过测试,删除3亿数据中的100万条时,耗时超过半小时。。。
postgresql 使用odbc_fdw连接 sqlserver

安装配置odbc_fdw 1.安装unixODBC apt-get install unixodbc unixodbc-dev 2.安装 Microsoft ODBC Driver 17 for SQL Server curl https://packages.microsoft.com/config/ubuntu/16.04/prod......

dubox
前天
0
0
ConnectionString

ConnectionString的配置使用.NET 2.0配置文件(一般为Web.config或App.config文件)中的<connectionStrings>配置节,同一程序可以设置多个ConnectionString指向不同的数据库。 下面给出典型的C...

Yamazaki
2012/06/01
0
0
postgres监控正在执行的sql

SELECT procpid, start, now() - start AS lap, current_query FROM (SELECT backendid, pgstatgetbackendpid(S.backendid) AS procpid, pgstatgetbackendactivity_start(S.backendid) AS st......

NotFoundException
2014/05/19
0
0
多平台向Postgresql 迁移

最近有个工作要把 一个SqlServer 迁移到 Postgresql 平台上,上网搜了搜,EnterpriseDB在这块做了很多工作, EnterpriseDB 的 Postgres Plus Advanced Server管理工具中有一个 mogiration t...

从前
2013/01/30
0
0
Sequelize 4.38.0 发布,新增 PostgreSQL 网络类型

Sequelize 4.38.0 发布了,Sequelize 是一款基于 Nodejs 的异步 ORM 框架,它同时支持PostgreSQL、MySQL、SQLite 和 MSSQL 多种数据库,很适合作为 Nodejs 后端数据库的存储接口,为快速开发...

h4cd
06/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSX | SafariBookmarksSyncAgent意外退出解决方法

1. 启动系统, 按住⌘-R不松手2. 在实用工具(Utilities)下打开终端,输入csrutil disable, 然后回车; 你就看到提示系统完整性保护(SIP: System Integrity Protection)已禁用3. 输入reboot回车...

云迹
今天
4
0
面向对象类之间的关系

面向对象类之间的关系:is-a、has-a、use-a is-a关系也叫继承或泛化,比如大雁和鸟类之间的关系就是继承。 has-a关系称为关联关系,例如企鹅在气候寒冷的地方生活,“企鹅”和“气候”就是关...

gackey
今天
4
0
读书(附电子书)|小狗钱钱之白色的拉布拉多

关注公众号,在公众号中回复“小狗钱钱”可免费获得电子书。 一、背景 之前写了一篇文章 《小狗钱钱》 理财小白应该读的一本书,那时候我才看那本书,现在看了一大半了,发现这本书确实不错,...

tiankonguse
今天
4
0
Permissions 0777 for ‘***’ are too open

异常显示: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ......

李玉长
今天
5
0
区块链10年了,还未落地,它失败了吗?

导读 几乎每个人,甚至是对通证持怀疑态度的人,都对区块链的技术有积极的看法,因为它有可能改变世界。然而,区块链技术问世已经10年了,我们仍然没有真正的用上区块链技术。 几乎每个人,甚...

问题终结者
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部