Tsql 用户定义的表类型不可用

您是否需要Sql Server 2008的特定版本才能具有TVP(表值参数)或表类型 我没有“类型”下的文件夹,尝试创建文件夹时出错: CREATE Type EntityTable AS TABLE (EntityId int ,EntityName varchar(max) ,EntityFriendlyName varchar(max) ,IconPath varchar(max) ,EntityDescription varchar(max) ,EntityToolTip v

Tsql T-SQL插入-表变量中的Select非常慢

我有一个表变量,使用Insert Into-Select语句在其中插入一些值。select是几个连接的组合,单独执行时需要3秒钟。问题是整个代码需要3-4分钟才能执行。我想知道这有什么特别的原因 这是my table变量声明: DECLARE @Result TABLE ( ProductID NVARCHAR(25) PRIMARY KEY ,ProductName NVARCHAR(100) ,ProductCategoryID TINYINT ,Prod

游标循环中的TSQL速度更快

建立一个查询 单个查询如下所示,运行时间为7.0秒。它确实返回了正确的答案。需要根据特定条件对行进行计数,然后获得最大计数。我的问题是这个备用查询的性能。用游标包装的同一个查询需要0.15秒。在游标中,查询计划大不相同。如何使独立查询运行得更快 使用提示可以使单机版计划看起来像光标计划,从而解决了速度问题 固定查询:(由于选项失败,并非始终固定) 问题查询: select getdate(); go select max(list.match) as 'max' from (

Tsql 坐在一个部分,你会对它构成风险,因为当你进入它时,温度会升高,因此访问的部分越少越好。是的,segmentID可以被视为物品的一个属性,它使用连接来获取它,但是yepI正在做其他事情,但是非常感谢您的回答,我希望在第二天左右就能够了解它!再一次,真诚地,非

坐在一个部分,你会对它构成风险,因为当你进入它时,温度会升高,因此访问的部分越少越好。是的,segmentID可以被视为物品的一个属性,它使用连接来获取它,但是yepI正在做其他事情,但是非常感谢您的回答,我希望在第二天左右就能够了解它!再一次,真诚地,非常感谢你的回答。我正忙着做其他事情,但非常感谢你的回答,我希望在第二天左右就能弄明白!再次真诚地感谢你的回答。 Segment ID, NumberOfItemsRequiredInSegment Segment Count Query

Tsql 删除行的存储过程-SQL Server 2008 R2

我编写了一个存储过程,它只允许有100行具有相同的CustomerPK,因此如果我们要插入第101行,则需要删除具有相同CustomerPK的最早的行 我确信有几种方法可以做到这一点,但我不确定哪种方法最好。这是程序的代码 DECLARE @TokenCount INT; SELECT @TokenCount = COUNT(*) FROM CustomerAuthTokens WHERE CustomerPK = @CustomerPK; IF @T

Tsql 这个查询可以简化吗?

有没有更简单的方法来执行此查询 实际上,在一个更大的查询中使用它 宁愿不使用EXCEPT、UNION、INTERSECT 作为更大查询的一部分,优化器可能会在派生表和 发布较大的查询没有价值,因为它是动态的 docSVsys上的PK是sID docMVenum1上的主键是sID、enumID、valueID select sID from docSVsys EXCEPT select sID from docMVenum1 where enumID = 140

Tsql 如何消除空值,并使用split delimter插入

仅供参考,SplitDelimiterString是一个函数。 -SplitDelimiterString的代码 drop table #temp Create Table #Temp ( col1 Varchar(20), col2 Varchar(20), Col3 Varchar(50), col4 Varchar(20) ) Select * From #Temp Insert Into #Temp(col1) Select * From SplitDelimiterS

Tsql 对xml语句使用INSERT

如何将信息的xml文档插入到现有表中,我不知道insert语句如何工作我的代码如下: USE MyGuitarShop; DECLARE @CustomerUpdate XML; SET @CustomerUpdate = ' <NewCustomers> <Customer LastName="Chan" FirstName="Isabella" Password="" EmailAddress="izzychan@yahoo.com"/> &

Tsql 在视图T-SQL上连接

我正在发表看法。我现在拥有的是: CREATE VIEW [dbo].[vwEventDetails] AS SELECT ISNULL(ROW_NUMBER() OVER (ORDER BY EventID), 999999999) AS Row, STUFF(DetectorID, len(DetectorID), 1, '0') as SiteID, DetectorID AS DetectorID, StartedOn AS StartedOn,

Tsql 为X列手动定义的T-SQL总和值

我试图在一个名为Total的列中插入一个值,计算一周中花费的小时数 我在网站上有一个表单,允许用户输入周一、周二、周三、周四、周五、周六和周日的值 我可以通过每个字段的标记访问输入的值。IE:如果我需要Mon的值,我可以使用[Mon]获取它,它将提取用户在列中输入的任何数字 使用此功能,我可以构建一个查询,例如: INSERT INTO MyTbl (Mon, Tues, Weds, Thurs, Fri, Sat, Sun,) VALUES ('[Mon]', '[Tues]', '[Weds

Tsql 如何提取在一周中的每一天的不同时间之后具有发送日期的记录?

我有一个表格,里面有电子邮件数据,特别是发送日期和时间。我需要提取每天在给定时间后(即营业结束后)发送的记录。问题是每天的营业时间可能会有所不同。目前我们只在下午6点后使用,但与本周剩余时间相比,一些业务可能在周五提前完成 我可以按照以下方式进行单个查询: SELECT DataExtractTableID FROM DataExtractTable WHERE (Box = 'Sent Items') AND (Owner = @EmailAddress) AND (DateSent BET

Tsql 比较多维数据集数据和数据集市数据的简单方法是什么?

我试图使用TSQL查询将多维数据集的数据与数据集市的数据进行比较。我很难找到多维数据集中使用的列的来源。因为多维数据集中使用的列来自数据源视图,但我如何知道哪个表 感谢帮助您熟悉SQL Server商业智能吗?一般来说,您看到的“列”来自事实表,它们被分割成一个或多个维度(由维度表定义) 如果您知道如何使用多维数据集,那么最好通过SQL Server Business Intelligence Studio检查多维数据集。如果您对使用BIDS来设计SSAS多维数据集有点不确定,您应该开始学习。这

TSQL:over子句

请帮我了解一下,订单对over条款的影响。我读过msdn和一本书,但仍然有误解 假设我们有这样的疑问: SELECT Count(OrderID) over(Partition By Year(OrderDate)) ,* FROM [Northwind].[dbo].[Orders] ORDER BY OrderDate 结果是,每个原始数据都有一列,该列的值为表中同一年有多少个条目 但是当我尝试这个查询时发生了什么 SELECT ROW_NUMBER() over(Parti

Tsql 获取具有指定角色的所有数据库用户的列表

我想获取具有指定角色的所有数据库用户的列表。角色是存储过程或函数的参数 例如带有用户名及其角色的select语句 +============+========== | User name | Role | +============+========== MS SQL Server 2008可能会使用类似的内容 SELECT SU.Name AS UserName, SR.Name AS RoleName FROM sysUsers AS SU INNER

Tsql 如何制定T-SQL以排除重复项?

我试图开发一个查询,只返回不重复的记录,以便我可以将这些记录添加到我的数据库中,但我不断得到重复记录错误 我尝试了您的解决方案,但仍然遇到重复错误问题。我删除了重复的35行。还有什么原因可能导致这种情况?这是我的问题。我认为混淆的一部分是measureid是j5c_MasterMeasures中的一个列,但是这个值来自j5c_ListBoxMeasures_Sys中的两个字段 CREATE TABLE #GOOD_RECORDS3 (STUDENTID VARCHAR(50), MEASURED

Tsql T-SQL关于递归查询(CTE)的几个问题

我使用CTE()从树中获取所有项目(例如广告),但我想知道两件事——最困难的部分: 1) 是否有可能获得找到的广告的所有类别名称?(在递归CTE查询中,查看上面的超链接) 2) 和(可选)如何获得每个类别的总找到的广告数?我的意思是,假设我从3个类别中找到了6个项目,我希望看到这样的结果 category1 (6) -\ | category3 (4) category2 (2) 任何想法都会非常有帮助对于第一个问题,你需要从下到上,它可以通过改变查询顺序来解决,例

使用类似tsql的值列表

在transact-sql中,我有: DECLARE @phrase='KeyWord1 KeyWord2 ,KeyWord3 ' -- and my be more separated by space,comma or ;(but mainly by space=it's a phrase) I have a table Students Students ( StudentId bigint,

Tsql 在关键字对或关键字中

如果我在WHERE子句中使用以下任一项,会有很大区别吗 WHERE [Process Code] = 1 AND ([Material ID] = 'PLT' OR [Material ID] = 'BMI') --or WHERE [Process Code] = 1 AND [Material ID] IN ('PLT', 'BMI') 有没有时间我会使用其中一个而不是另一个?在您提供的示例中,他们正在做完全相同的事情(他们将产生相同的执行计划)。但是,使用后一种语法(除了更简洁外)

Tsql 如何解决;找不到可安装的ISAM。”;OLE DB提供程序的错误";Microsoft.ACE.OLEDB.12.0“;

我正在尝试使用带有“Microsoft.ACE.OLEDB.12.0”OLE DB提供程序的T-SQL OpenRowset()命令将Excel 2007(.xlsx)文件中的数据导入SQL Server 2008,并且遇到一个永久性的“找不到可安装的ISAM”错误。所有硬件都是32位的 [2012年1月10日修订,试图更敏锐地关注异常情况] 以下T-SQL语句产生错误: 从OPENROWSET('Microsoft.ACE.OLEDB.12.0'中选择*, 'Data Source=C:\wo

Tsql 有没有可能有;“不在/不存在”;在一张桌子上,然后在另一张桌子上?

我现在正在维护一个由别人编写的大型应用程序,从一些大型政府遗留系统中挖掘数据。基本上,我需要一个查询结果来填充gridview,该gridview从技术订单中获取每个零件号,并在Fedlog表中统计匹配的零件号。如果没有找到,请查看“商业”表。现有查询当前仅在Fedlog表中查找,内容如下: select p.*, (select case when count(*) > 0 then 'Y' else 'N' end as SL from tbl_fedlog where [Par

Tsql 作为视图或调用函数的存储过程

我可以使用存储过程来归纳系统视图吗?例如,我有: CREATE PROCEDURE DBO.status_serwer AS BEGIN EXECUTE msdb.dbo.sysmail_help_status_sp END Sysmail\u help\u status过程返回服务器的状态:“stopped”或“started”,现在,我可以将start\u serwer过程作为视图或函数调用吗?有人帮忙吗?好吧,如果你查看存储的进程内部,你可以抓取它运行的查询并稍加修改,这样你就可以在其他

基于同一记录集中的2个条件的TSQL组

我有一个问题让我困惑了两天。问题就在这里。我有一张像这样的桌子: 我想做的是对最终在同一个表中的分组进行排序。对于上面的示例,我将以以下内容结束: 这样的事情能完成吗?正如您所注意到的,我们按不同的列进行分组。这不一定要用一个查询来完成,但是,它必须在一个表/数据集中结束。似乎您需要这样: select PeriodEarnedYear, sum(PeriodEarned) Earned, Sale from yourtable group by PeriodEarnedYe

Tsql “如何删除字母”;";在发送sp_send_dbmail(Transact-SQL)的日期中

我创建了一个sp_send_dbmail,它从我的数据库中获取查询信息,但现在当它返回日期时,在需要空格的地方会显示一个“T” 我试图用空格Set@Body=replace(@Body,'T','')替换“T” 但什么也没发生 请帮忙 Set @TableHead = '<html><head>' + '<H1 style="color: #000000">SpeedDail Lookup</H1>' +

Tsql 非常简单的批量插入为CSV中的每一行插入空值

我能听到你说:那就不那么简单了,是吗 这是桌子: CREATE TABLE [bulkimport].[Test]( [Id] [int] IDENTITY(1,1) NOT NULL, [Data] [nvarchar](50) NULL, CONSTRAINT [PK_Test_1] PRIMARY KEY CLUSTERED ( [Id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNO

Tsql 可以更改为Case语句的Union语句

大家好 我有这样的代码,有点难看, 我的一位朋友告诉我,我可以在这里实现Case语句,但我不知道如何实现,代码很长,如果您能帮助我优化代码,我将不胜感激 请对我温柔一点,我是T-sql的新手:) 谢谢大家! SELECT SUM(CYJEWELRY) 'CY_Jewelry' ,SUM(CYAPPLICANCE) 'CY_Appliance' ,SUM(CYCELLPHONE) 'CY_Cellphone' ,SUM(PYJEW

Tsql 如何以标题为中心?

我正在尝试使用Tsql将行转换为列,并消除空值。我该怎么做?我当前的查询: IF OBJECT_ID(N'tempdb..#test_data') IS NOT NULL drop table #test_data create table #test_data ( question_caption varchar(max), [0] varchar(max), [1] varchar(max), [2] varchar(max), [3] varchar(max)) insert #tes

Tsql 上下文信息和nvarchar-选择上的其他字符

我想用一些值(存储为NVARCHAR(128))设置CONTEXT_INFO,然后在另一个地方读取这个值并用它创建一个xml变量。不幸的是,select上有更多的字符,不知道如何修复。 复制代码: exec dbo.[SetConnectedUser] 'p' DECLARE @contextInfo VARCHAR(128) = NULLIF(CAST(CONTEXT_INFO() as VARCHAR(128)), '') SELECT @contextInfo AS 'ContextI

Tsql SQL Server-根据用户角色返回行

我们正在开发一个带有SQL Server后端的Access应用程序。我们有一个表,其中包含属于部门a、B或C的记录。用户也属于角色a、B或C。我们希望每个用户只看到其相应的部门记录,以及某些列 我想到了两种方法,一种是对每个角色进行不同的查询,然后根据用户的角色更改表单的源对象。但是,我不知道是否可以使用VBA从SQL SERVER检索它(到目前为止,我发现的所有VBA文档都非常缺乏) 我认为的另一个解决方案是在服务器上实现这一点,但是我不知道t-SQL查询或视图如何仅获取基于用户角色的所需信息

Tsql 展平自联接表上的层次结构

我在一个自联接层次表中有数据,大陆有许多国家有许多地区有许多州有许多城市 自连接表结构: |-------------------------------------------------------------| | ID | Name | Type | ParentID | IsTopLevel | |-------------------------------------------------------------| | 1 | North

Tsql Pyspark中的多WHEN条件实现

我有我的T-SQL代码,下面是我在Pyspark中转换的代码,但给出了错误 案例 当time_on_site.eventaction='IN'和time_on_site.next_action='OUT'和time_on_site.timespunt_sec=72000时,则为0 当time_on_site.eventaction='IN'和time_on_site.next_action='IN'和time_on_site.timespunt_秒28800时,则为3 当time_on_site

Tsql 如何在多行上使用OPENJSON

我有一个临时表,其中有多行,每行有一列名为类别;它包含一个非常简单的json数组,用于不同表中的类别 临时表的几个示例行: Id Name Categories --------------------------------------------------------------------------------------------- '539f7e28-143e-41bb-8814-a7b93b8460

Tsql SQL Server在插入到Select后挂起

谢谢你看这个 该问题与以下sql查询有关。基本上,它递归地查找某个页面母版页下的所有页面,然后将在外部参照页面类别中查找的母版页的类别应用于所有这些页面 在运行insert时,查询表中本应完全插入的数据将挂起 如果我在没有插入行的情况下运行查询,结果会完美地返回,如: 3245 490 3249 490 3252 490 但是在将insert放在前面并插入时,pageid=3245的查询就挂起了。有什么想法吗 declare @page int; set @page=320

Tsql 我应该为常见的大型SQL联接生成表值函数吗

仅使用SQL几个月(这个地方到目前为止帮了我很大的忙,谢谢大家!) 但是,尽管我是一个DB程序员初学者,我已经注意到有许多大型连接,我发现自己在一遍又一遍地重复。我正在考虑为常用联接创建一个表值函数,并允许将一个参数传递到该函数中,该函数将过滤结果 例如。 而不是写作 SELECT * FROM T1 join T2 on T1.A = T2.A join T3 on T2.B = T3.B join T4 on T3.C = T4.D WHERE T1.D

Tsql 基于表联接的空结果更新字段

我一直在寻找关于如何从另一个表中获取设置值的参考,但我们并不真正使用此字段,因此我很乐意将其设置为通用值“1” 我只想设置11k示例,其中使用此查询底部的select删除了模型类型 update webhelpdesk.dbo.ASSET set MODEL_ID = N'1' where ASSET_NUMBER = (select a1.ASSET_NUMBER from asset a1 left join webhelpdesk.dbo.MODEL m1 on

Tsql 有条件地替换映射表中的select值

如果值与查找表中的值匹配,我想替换SELECT语句中的值。这是为了处理从子对象到父对象的映射 DECLARE @Mappings TABLE ( IdKey INT IDENTITY PRIMARY KEY , ParentModule NVARCHAR(255) , ChildModule NVARCHAR(255) ) 这是由子模块及其父模块填充的,大约有200个这样的映射 然后在我的SELECT语句中,我想使用ParentModule而不是子模块,但如果子模

Tsql 将IIF查询转换为Transact-SQL

所以我一直在尝试将我的数据库从Access-2010迁移到SQL-2012 大多数表和查询都可以,但我在这方面遇到了问题: IIf([mkt_Original].[IMPOEXPO]="1",IIf([prod]="0201",IIf(([USD]/[Tons]) <[TCambio].[CortePrecio0201],1,0),IIf([prod]="0202",IIf(([USD]/[Tons]) <[TCambio].[CortePrecio0202],1,0)

Tsql 如何显示日期的时间部分?

我只想使用tsql获取日期时间的时间部分。我发现,要获得不同的格式,可以使用以下内容: CONVERT(varchar,GETDATE(),108) ---17:15:00 gives time in 24hr format 我想在下午5:00得到它。使用 这是。什么版本的SQL?2008年及以后的版本有几种“时间”数据类型,如果您只需要时间的话,它们更方便 对于布局/演示,使用CONVERT功能和所需的格式代码。下面是一个如何工作的示例: DECLARE @When time SET @

TSQL:如何在不排序的情况下获得唯一的行号

我有下表: DECLARE @MyTable TABLE (Id UNIQUEIDENTIFIER, MyColumn NVARCHAR(50)) INSERT INTO @MyTable (Id, MyColumn) VALUES (NEWID(), N'1') ,(NEWID(), N'1234') ,(NEWID(), N'12') ,(NEWID(), N'123') SELECT ROW_NUMBER() OVER(ORDER BY My

Tsql 根据sql查询从生成的group by为特定列检索多行

我有如下数据 ColumnA ColumnB 1234 1 1234 2 1234 3 1235 2 1236 2 1237 1 1237 2 1238 1 1238 3 1238 5 我需要如下所示的输出,其中只显示在第1列中具有相同值的项(例如ColumnA) 实际上,我通过下面的查询得到第一个表,如何修改它以按照最终的表显示 select ColumnA, ColumnB from T

Tsql 按案例语句中的项目排序

是否有其他方法可以按年龄组对结果进行适当排序?作为一种变通方法,我在每个年龄组之前放置了一个字符,以便按时间顺序显示——但如果字母不在那里,那么它就不会按我期望的顺序显示。以下是T-SQL: WITH AgeData AS ( SELECT DATEDIFF(YEAR, birthDate, GETDATE()) - CASE WHEN GETDATE() < DATEADD(YEAR , DATEDIFF(YEAR, birthDate, GETDATE()), birthDate )

根据TSQL中的另一个表值更改返回的字段

我有一个名为Measures的表,其中包含不同字段中代码的结果值,具体取决于PracticeID。例如: PracticeID Code Value1 Value2 ---------- ---- ------ ------ 1 CX H null 2 CX null L PracticeID Code ColumnName ---------- ---- ---------- 1 CX Value1 2

上一页   1   2   3   4    5   6  ... 下一页 最后一页 共 156 页