标签: sql-server

更新数据库中的sql位字段

在一个sql表中,我有一个位字段,值显示为True,当我在代码中更新 Update table1 set Active='True'它进行更新但现在显示的值1代替True.如何将值放在'True'表中而不是整数?谢谢.

sql sql-server ssms

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

在动态SQL中SQL Server等效的Oracle绑定变量是什么?

在Oracle中,编写动态SQL时,会执行以下操作:

create or replace procedure myProc(n in number)
as
begin
  execute immediate
   'update myTable set myColumn = :n' 
   using n;
commit;
end;
Run Code Online (Sandbox Code Playgroud)

然后'魔术发生'.SQL Server中等效的概念/语法是什么(如果有的话)?(顺便说一句,我正在使用SQL Server 2005)

t-sql sql-server dynamic-sql

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

删除不同的行

我有一个具有唯一非聚集索引的表,并且此索引中列出了4个列.我想更新表中的大量行.如果我这样做,它们将不再是不同的,因此更新因索引而失败.

我想要禁用索引,然后删除最旧的重复行.到目前为止,这是我的查询:

SELECT t.itemid, t.fieldid, t.version, updated
FROM dbo.VersionedFields w
inner JOIN
(
    SELECT itemid, fieldid, version, COUNT(*) AS QTY
    FROM dbo.VersionedFields
    GROUP BY itemid, fieldid, version
    HAVING COUNT(*) > 1
) t 
on w.itemid = t.itemid and w.fieldid = t.fieldid and w.version = t.version
Run Code Online (Sandbox Code Playgroud)

内部联接内部的选择返回我们想要删除的正确数量的记录,但是对它们进行分组,实际上是实际数量的两倍.

加入后它会显示所有记录,但我想要删除的是最早的记录吗?

如何才能做到这一点?

sql sql-server greatest-n-per-group

7
推荐指数
1
解决办法
4574
查看次数

有没有办法使用OVER子句而不是CTE来计算TSQL中的相关性?

假设您有一个包含列,Date,GroupID,X和Y的表.

CREATE TABLE #sample
  (
     [Date]  DATETIME,
     GroupID INT,
     X       FLOAT,
     Y       FLOAT
  )

DECLARE @date DATETIME = getdate()

INSERT INTO #sample VALUES(@date, 1, 1,3)
INSERT INTO #sample VALUES(DATEADD(d, 1, @date), 1, 1,1)
INSERT INTO #sample VALUES(DATEADD(d, 2, @date), 1, 4,2)
INSERT INTO #sample VALUES(DATEADD(d, 3, @date), 1, 3,3)
INSERT INTO #sample VALUES(DATEADD(d, 4, @date), 1, 6,4)
INSERT INTO #sample VALUES(DATEADD(d, 5, @date), 1, 7,5)
INSERT INTO #sample VALUES(DATEADD(d, 6, @date), 1, 1,6)
Run Code Online (Sandbox Code Playgroud)

并且您想要计算每个组的X和Y的相关性.目前我使用的CTE有点乱:

;WITH DataAvgStd
     AS (SELECT GroupID,
                AVG(X) …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server correlation

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

从CASE语句分配给T-SQL变量

我想在查询中分配一些变量,这些变量使用CASE它的列的语句.不太确定如何做到这一点,无法找到正确的语法.

这是我到目前为止,但它有语法错误.

 -- set @theID and @theName with their appropriate values
 select top (1) 
 @theID = (Case when B.ID IS NULL then A.ID else B.ID END) ,
 @theName = (Case when B.Name IS NULL then A.Name else B.Name END) 
 from B left join A on A.ID = B.ID where ...
Run Code Online (Sandbox Code Playgroud)

将这些变量粘贴在那里的正确位置/方法是什么?

sql t-sql sql-server

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

在SQL语句中使用'IN'和子查询

在我们可以使用JOIN的地方使用SQL语句中的"IN"关键字是否存在任何性能问题?

SELECT xxx
FROM xxx
WHERE ID IN (SELECT Id FROM xxx)
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-in

7
推荐指数
1
解决办法
312
查看次数

在WHERE条件中获取SQL中的最后一条记录

我有loanTable两个字段loan_idstatus

loan_id status
==============
1       0
2       9
1       6
5       3
4       5
1       4  <-- How do I select this??
4       6
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我需要显示在过去Statusloan_id1点即是status4.可以帮助我在此查询.

sql t-sql sql-server where-clause

7
推荐指数
2
解决办法
4万
查看次数

JDBC驱动程序是否可以配置为使用共享内存协议

我在一个非常严格的环境中工作,我正在尝试配置Java应用程序以连接到我本地运行的SQL Server实例.

已启用共享内存,TCP/IP和命名管道客户端协议,但只有共享内存协议作为我的SQL Server实例的"网络配置"的一部分启用.所以每当我尝试建立连接时,我都会收到错误,

"连接被拒绝:连接.验证连接属性,检查主机上是否正在运行SQL Server实例并接受端口上的TCP/IP连接,并且没有防火墙阻止与端口的TCP连接."

我很确定这是因为实例上没有启用TCP/IP.那么有没有办法在JDBC URL中指定应该使用共享内存,或者这是不可能的?

java sql-server jdbc

7
推荐指数
1
解决办法
1972
查看次数

为什么使用XML类型在SQL Server中存储XML数据?

我正在玩并学习使用Microsoft SQL Server.我想将XML文档存储在表中,不会在表中修改部分XML文档(即任何更改都将通过更新该单元格中的整个XML文档来完成).

从我所看到的,我可以将XML文档存储在Xml类型的列或varchar(MAX)中.

各自的优点和缺点是什么?

xml sql sql-server

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

从SQL Server表中检索每个类别的不同行数

我需要生成一个地址列表,我的客户将发送商品目录.他们希望将特定数量的目录(X)发送到特定的邮政编码(Y)[这与这些邮政编码中的平均收入有关]

我在SQL Server 2008 R2中有2个表:CatalogRequestsAddressList

CatalogRequests 是我们应该向客户数据库中的每个邮政编码发送多少目录的列表:

|  Zip  |  QuantityRequested  |
-------------------------------
| 12345 |         150         |
| 13445 |         800         |
| 45678 |         200         |
| 41871 |         350         |
| 77777 |         125         |
Run Code Online (Sandbox Code Playgroud)

AddressList 就是这样,一个地址列表=)

|  Name  |     Address1    |  Address2  |      City     |  State  |  Zip  |
---------------------------------------------------------------------------
|  Bruce | 1 BatCave Dr    |            |  Gotham City  |   IL    | 12345 |
|  Clark | 9 Smallville St |   Apt …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

7
推荐指数
2
解决办法
1034
查看次数