小编mg1*_*075的帖子

下一版本 SQL Server 的计划发布日期

微软是否发布了下一个版本的路线图,确定了计划的发布日期?

如果没有,您认为在下一个版本准备好生产之前需要多长时间?

sql-server

8
推荐指数
1
解决办法
2万
查看次数

如何在 pgAdmin 4 中备份一些选定的表,但不是全部?

在 pgAdmin 3 中,执行备份的对话框允许您检查和取消选中您想要成为备份一部分的表。

在 pgAdmin 4 中,要么我找不到此功能,要么不存在。

是否有任何方法可以仅备份 pgAdmin 4 中的选定表?

postgresql pgadmin pgadmin-4

8
推荐指数
1
解决办法
4273
查看次数

查询用于报告的事件表

背景 (用单词问题掩盖了一个现实世界的问题)
Farmer Brown 在加利福尼亚州有一个桃园,向全国各地运送数十万个桃子。当一批桃子到达目的地时,送货员会检查桃子并保留所有未通过检查的桃子。

当检验不合格的桃子运回 Farmer Brown's 农场后,Farmer Brown's Peach Hospital 将修复桃子缺陷,并与下一批桃子一起重新发货。如果原来的桃子再次检查不合格,只要桃子是可挽救的,它们就会经历同样的过程。

桃子医院很贵,运费也很贵,所以Farmer Brown开始思考,“对于我在任何时间范围内运送的桃子,我总共运送了多少?在总数中,第二次运送了多少?对于第三次(或更多)?”

在高层次上,桃子发货跟踪表(在 SQL Server 2000 数据库上)有超过900 万条不同类型发货的记录,看起来(大致)类似于:

ShipmentDate   PeachID    Shipment Type
8/10/2005         7112      Shipment to Customer
7/15/2007         8798      Shipment to Customer
4/3/2009          8798      Shipment to Customer
4/15/2009         8798      Shipment to Customer
4/21/2009         8798      Shipment to Customer
4/21/2009         145751    Shipment to Customer
4/22/2009         7112      Shipment to Customer
4/22/2009         12121     Shipment to Customer
4/25/2009         8798      Shipment to Customer
5/12/2009         8798      Shipment to Customer
Run Code Online (Sandbox Code Playgroud)

如果我们尝试返回 Farmer Brown …

query sql-server-2000 reporting

5
推荐指数
1
解决办法
180
查看次数

某个日期范围内每个日期在给定日期打开的订单总数

这个问题类似于Running total with count? ,但请允许我进一步解释这个问题。

我使用的是 SQL Server 2008,因此 Aaron Bertrand 描述的游标选项在速度方面似乎是最有前途的。

不过,这里的不同之处在于我必须考虑单个项目的两个日期。因此,给定订单表中的 OrderID 项,OrderID 具有 Opened Date 和 Closed Date。Opened Date 总是填充的,但 Closed Date 可以是NULL

OrderID  OpenedDate    ClosedDate
654554    12/1/2011     5/4/2012
678451    12/4/2011     3/2/2012
679565    12/8/2011     5/21/2012
701541    5/23/2012     NULL
...
Run Code Online (Sandbox Code Playgroud)

我需要 - 有效地 - 获取在日期范围内的任何给定日期有多少订单具有我们可以称为“打开”状态的状态。日期范围可能跨越几年。(是的,我确实有一个连续日期的参考表。)

Date         CountOfOpenOrders
12/1/2011    175
12/2/2011    178
12/3/2011    195
12/4/2011    192
12/5/2011    191
...
Run Code Online (Sandbox Code Playgroud)

sql-server-2008 t-sql

5
推荐指数
1
解决办法
4101
查看次数

维护大表的全文索引

我使用的是 SQL Server 2008,有一个用于报告目的的表,其中包含 500,000 条记录,这些记录很容易达到数百万条。该表将采用全文索引来快速搜索少数列。

由于这是报告表而不是源事务表,因此有时会添加新记录,而有时由于源表中发生的更改而必须删除现有记录。

我的问题是关于构建(正在进行的)报告表并维护该表的全文索引的最佳方法。

添加全文索引后,我应该:

  1. 保留索引,并根据需要删除/添加记录
  2. 保留索引,截断报告表,然后插入所有适当的记录
  3. 其他?

到目前为止,我在研究时已经看到了这些文章,但这种情况的最佳实践并不明显。

  1. https://learn.microsoft.com/en-us/sql/relational-databases/search/get-started-with-full-text-search?redirectedfrom=MSDN&view=sql-server-ver15
  2. https://techcommunity.microsoft.com/t5/datacat/best-practices-for-integrated-full-text-search-ifts-in-sql-2008/ba-p/305000
  3. https://social.msdn.microsoft.com/Forums/en-US/c743f6e4-88c6-478b-954b-ba8207e391c5/sql-2005-full-text-index-rebuild-nightly-best-approach?forum=sqldatabaseengine

sql-server-2008 best-practices full-text-search

5
推荐指数
1
解决办法
3959
查看次数

数据仓库自动化工具:好处还是坏处?

今天,在研究 ETL 和Kettle 之类的数据仓库解决方案时,我遇到了一个新概念(对我而言),称为数据仓库自动化工具

我还查看了此处白皮书,这表明该领域的供应商很少。

我对这些工具的一个反应是:哇,任何购买这些工具的人都在进行巨大的投资。同时,似乎许多数据仓库项目都失败了,即使它们需要开发人员花费大量时间来实施。

所以,如果有人在那里确实有在真实世界中的项目数据仓库的自动化工具的经验,你能回答这些问题吗?

  1. DWA 工具是否极大地减少了启动和运行数据仓库的时间,或者是否占用了原本应该获得的时间来学习该工具所花费的时间?
  2. 如果 DWA 工具导致您的数据仓库项目失败,原因是什么?
  3. 如果你过去做过数据仓库没有使用 DWA 工具,而你最近也使用过 DWA 工具,你会在下一个数据仓库项目中再次使用 DWA 工具吗?
  4. 你什么时候会认为 DWA 工具是矫枉过正的?
  5. 您最喜欢使用 DWA 工具的哪一点?你最不喜欢什么?

data-warehouse etl

5
推荐指数
2
解决办法
906
查看次数

在 PostgreSQL 中返回 json 数组切片

Postgres 9.5

给定一个表,其中包含一个类型为 的字段json,大约有 700 行,并且每行在单个数组中大约有 4,000 个元素......

我的数据库字段:

[0.44577, 0.4855, 0.45429, 0.54437,...]
[0.45012, 0.48698, 0.45715, 0.55337,...]
[0.47347, 0.49156, 0.46079, 0.56818,...]
[0.4936, 0.49835, 0.46086, 0.58195,...]
[0.51068, 0.50511, 0.46228, 0.59482,...]
Run Code Online (Sandbox Code Playgroud)

PostgreSQL文档展示了如何查询数组中的单个元素。

 SELECT my_db_field->2 AS test FROM my_db_table
Run Code Online (Sandbox Code Playgroud)

结果:

test (of type json)
--------------------
0.4855
0.48698
0.49156
etc.
Run Code Online (Sandbox Code Playgroud)

不过,我想做的是选择数组中的多个元素,并将其作为与行格式相同的数组返回。我所说的多个是指数组中大约有 300 个元素;例如,从元素 0 到元素 300。Postgres 对于这样的查询有很好的语法吗?

postgresql json postgresql-9.5

5
推荐指数
2
解决办法
6576
查看次数

postgresql:如何知道函数何时被修改

场景:有人在 PostgreSQL 数据库中创建了一个名为“foo”的函数。接下来,有人修改了函数“foo”的内部工作原理。

问题:PostgreSQL 是否提供了一种方法来知道谁修改了函数“foo”以及何时修改了“foo”?

postgresql

4
推荐指数
1
解决办法
739
查看次数

使用动态 SQL 函数中的参数进行通配符搜索

在使用动态 SQL 的函数中使用参数时,在 PostgreSQL 中实现通配符搜索的正确方法是什么?

作为起点,以下是 Erwin Brandstetter 在 stackoverflow 上回答不同问题的示例:

/sf/answers/843309421/

CREATE OR REPLACE FUNCTION report_get_countries_new (starts_with text
                                                   , ends_with   text = NULL)
RETURNS SETOF lookups.countries AS
$func$
DECLARE
   sql text := 'SELECT * FROM lookups.countries WHERE country_name >= $1';
BEGIN
   IF ends_with IS NOT NULL THEN
      sql := sql || ' AND country_name <= $2';
   END IF;

   RETURN QUERY EXECUTE sql
   USING starts_with, ends_with;
END
$func$ LANGUAGE plpgsql;
Run Code Online (Sandbox Code Playgroud)

假设country_name您想要进行前导和尾随通配符搜索。

例如,不使用参数,AND country_name LIKE '%ic%'.

在这种情况下,在否定 …

postgresql sql-injection dynamic-sql plpgsql

3
推荐指数
1
解决办法
9182
查看次数