tsql相关内容

有没有一种简单的方法可以从两个整数的组合键创建唯一的整数键?

出于与问题不太相关的各种原因,我有一个表,其中有一个由两个整数组成的组合键,我想从这两个数字中创建一个唯一键。我最初的想法是将它们连接在一起,但当我意识到(51,1)的组合键将产生与(5,11)相同的唯一键(即511)时,我很快就遇到了问题。 有没有人有一种聪明的方法从两个整数中生成一个整数,以便生成的整数对于这对起始整数是唯一的? 编辑:在遇到大量令人印象深刻的数学问题后,我意识到我 ..
发布时间:2022-04-08 17:25:35 其他开发

字符串中元素的反向顺序

我有以下字符串: 1119/2/483/11021 我想颠倒该字符串中元素的顺序。所需输出: 11021/483/2/1119 T-SQL 2014版 推荐答案 您需要一个有序的拆分函数,例如(inspiration): CREATE FUNCTION dbo.SplitOrdered ( @list nvarchar(max), @d ..
发布时间:2022-04-05 13:55:35 数据库

仅当存在XQuery SQL SELECT节点时

我使用的是SQL Server 2012 我正在寻找一种从我的表中选择一些具有XML数据类型的节点值的方法,如下所示。 我有以下架构 USE tempdb; GO DROP TABLE IF EXISTS [dbo].[tblStepList]; CREATE TABLE [dbo].[tblStepList]( [ToDoId] [int] IDENTITY(1,1) ..
发布时间:2022-04-02 13:02:09 数据库

如何使用SQL编写基本的ETL,而不在每次ETL运行时截断/加载?

我有一个OLTP数据库,我正在使用SQL(ETL)将其加载到另一个数据库中。为此,在第二个数据库数据库中,我基于事实和维度创建了星型架构模型。 技术:MS-SQL 事实:销售额 维度:客户、客户、代理 注意:源系统中没有修改日期字段,可以在源系统中删除行。 我有一个代理作业,它每15分钟运行一次,以执行以下操作:对于每个表,我将数据从OLTP数据库加载到相应的临时表中(对 ..
发布时间:2022-03-31 12:19:34 数据库

内连接和许多左连接表的总和值

我有一个复杂的查询,包含一个INNER JOINed表和多个LEFT JOINed表到一个主表。其中一个表有多行与主表的每一行相对应,我希望在SELECT查询中包括这些行的特定字段的SUM()。 当然,sql server开始逐个通知我 未包含在聚合函数或GROUP BY子句中 ,所以我开始在GROUP BY子句中添加它们,直到我遇到一个文本字段.在这种情况下,我收到错误 ..
发布时间:2022-03-13 12:48:12 数据库

为什么在此SQL While循环中返回相同的值?

我正在使用Microsoft SQL Server,并尝试将一些数据插入到临时表中。然后,我希望使用WHILE循环遍历临时表中的每一行。我不想使用光标。 请参见以下查询: -- Create Table DROP TABLE IF EXISTS #TMP_ABC CREATE TABLE #TMP_ABC ( [ABC] [varchar](3) NULL, ) -- I ..
发布时间:2022-03-08 10:11:08 数据库

T-SQL,为什么我们要写GO

为什么此代码中有两个围棋?当查询只需运行一次时,为什么需要包括它? USE AdventureWorks2016; GO SELECT Ord.SalesOrderID, Ord.OrderDate, (SELECT MAX(OrdDet.UnitPrice) FROM Sales.SalesOrderDetail AS OrdDet WHERE Or ..
发布时间:2022-03-08 09:58:55 数据库

SQL查询每15分钟比较一次值,每小时显示一次结果

我有一个包含2列的表。UTCTime和Values。 UTCTime以15分钟为单位递增。我想要一个查询,它可以将该值与一小时内的前一个值进行比较,并根据值是否为常量显示介于0和4之间的值。换句话说,每增加15分钟就有一个条目,该值可以是恒定的,因此我只需每小时检查每个值与前一个值的对应关系。 例如 +---------|-------+ | UTCTime | Value | --- ..
发布时间:2022-03-07 21:00:12 其他开发

对于JSON路径结果,SSMS被截断为2033个字符

我正在使用“for JSON Path(‘’)”将字符串连接在一起。 我已将“工具”->“选项”->“SQL Server”->“结果到网格”选项设置为最大。 我已将“工具”->“选项”->“SQL Server”->“结果”设置为“最大文本选项”。 在网格模式下执行查询并复制一行/一列结果时,我看到返回值限制为2033个字符。 如何确保返回值不被截断? 推荐答案 ..
发布时间:2022-03-07 20:07:58 数据库

t-sql::列出所有表、列和透视内容

我正在使用SSMS工具Data Discovery and Classification。 该工具自动搜索列名,如%address%、%name%、%surname%、%e-mail%、%tax%、%zip%等. 并且很好地向您建议它可能是一个合理的数据。 事实是,在盎格鲁-撒克逊社会之外,列名不是英语,但可以是法语、西班牙语、意大利语等。 所以我找到了一个查询,可以帮助我根据我的语 ..
发布时间:2022-03-03 23:38:28 数据库

对新创建的列使用大小写

我在SQL Server中有一个表,我已经按ID对其进行了分组,并使用其他数据的计数创建了2个新列。我希望能够同时创建另一列,如果两列中的计数都大于一个数字,则显示1,否则将显示2。但是,当我尝试时,它显示无效列名,我猜是因为我的计数列不在原始表中? 我的数据类似于: ID Data1 Data2 ------------------------- 0 1 ..
发布时间:2022-03-03 13:15:42 数据库

SQL Server::从没有约束的数据库创建ERD

我有一个给我们的数据库,没有约束,没有PK或FK。 我正在尝试反向工程,以找出表之间的连接。为此,我的方法是创建具有相同名称和数据类型的所有列的列表。所以我创建了这个查询: SELECT schema_name(tab.schema_id) AS schema_name ,tab.name AS table_name ,col.name AS column_name ..

DBMS级别的管道和过滤器:拆分合并输出流

方案 我们有一个非常标准的数据导入过程,在该过程中我们加载 staging表,然后MERGE将其放入target表。 新需求(绿色)涉及捕获导入数据的子集 放到单独的queue表中以进行完全无关的处理。 “挑战” (1)子集由以下记录的选择组成: 仅新插入target表。 (2)子集是一些插入列的投影,但也 至少有一列仅存在于源中(staging 表)。 (3)MERGE语句已使用 ..
发布时间:2022-02-26 16:31:45 数据库