小编Aar*_*and的帖子

MERGE而不在SQL Server 2008中指定列名

我看着MERGE看起来很酷的命令,但仍需要指定列.我正在寻找类似的东西:

MERGE INTO target AS t
USING source AS s          
WHEN MATCHED THEN
    UPDATE SET
    [all t.fields = s.fields]
WHEN NOT MATCHED THEN 
      INSERT ([all fields])
      VALUES ([all s.fields])
Run Code Online (Sandbox Code Playgroud)

可能吗?

sql-server sql-server-2008

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

使用Group By获得Grand Totals

我想详细了解SQL教我的那一刻,我目前试图进行一些简单的销售使用报告SUM,COUNT,AVGGROUP BY一个SQL Server 2008数据库中的功能.我已经设法按行获得每组的总数,计数和平均值.

如何按行获取所有组的总计?

SQL到目前为止:

SELECT 
    SUM(dbo.tbl_orderitems.mon_orditems_pprice) AS prodTotal,
    AVG(dbo.tbl_orderitems.mon_orditems_pprice) AS avgPrice,
    count(dbo.tbl_orderitems.uid_orditems_prodid) AS prodQty,
    dbo.tbl_orderitems.txt_orditems_pname
FROM 
    dbo.tbl_orderitems
INNER JOIN 
    dbo.tbl_orders 
    ON (dbo.tbl_orderitems.uid_orditems_orderid = dbo.tbl_orders.uid_orders)
WHERE 
    dbo.tbl_orders.uid_order_webid = 
       <cfqueryparam cfsqltype="cf_sql_integer" value="#session.webid#">
    AND dbo.tbl_orders.txt_order_status = 
       <cfqueryparam cfsqltype="cf_sql_varchar" value="#arguments.sale_status#">
GROUP BY
    dbo.tbl_orderitems.txt_orditems_pname
Run Code Online (Sandbox Code Playgroud)
Product                           Qty      Gross        Avg  

Westbury Climbing Frame           17       8,023.00     471.94
Sandpoint Deluxe Climbing Frame   34       36,146.00    1,063.12
Roseberry Climbing Frame          9        7,441.00     826.78
Ridgeview Texas Climbing Frame    10       6,990.00     699
Selwood …

sql sql-server-2008

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

如何在多用户模式下重命名数据库

我正在研究SQL SERVER 2008和2008 R2.如何在多用户模式下重命名数据库?我使用sp_rename但它返回此错误:

Msg 15225,Level 11,State 1,Procedure sp_rename,Line 338

sql-server-2008 sql-server-2008-r2

14
推荐指数
2
解决办法
3万
查看次数

如何从TIMESTAMP列获取日期/时间信息?

似乎TIMESTAMP信息以某种方式加密,其中日期/时间数据以某种方式以二进制编码.我只是想发现今天修改过的所有行.

sql-server sql-server-2008

13
推荐指数
3
解决办法
4589
查看次数

<table-valued function>不是可识别的内置函数名称

我收到此错误:

消息195,级别15,状态10,行
1'fnParseName'不是可识别的内置函数名称.

在这个查询:

SELECT  fnParseName(DOCTORFIRSTNAME+' ' +DOCTORLASTNAME) 
  FROM [PracticeandPhysician]
Run Code Online (Sandbox Code Playgroud)

这是fnParseName的代码

create FUNCTION [dbo].[fnParseName]
               (@FullName NVARCHAR(128))
RETURNS @FullNameParts TABLE  (FirstName  NVARCHAR(128),
                               Middle     NVARCHAR(128),
                               LastName   NVARCHAR(128))
AS
  BEGIN
    ... function body that populates @FullNameParts ...
    RETURN
  END
Run Code Online (Sandbox Code Playgroud)

为什么我收到此错误?

sql sql-server sql-server-2008

13
推荐指数
2
解决办法
3万
查看次数

有没有快速的方法来检查任何列是否为NULL?

我有一张大约20列的桌子.打字除外:

Where column1 is null OR column2 is null OR column3 is null etc...
Run Code Online (Sandbox Code Playgroud)

有没有更快捷的方法来检查每一列,看看是否有任何值为空,如果是,返回该记录?

sql t-sql sql-server sql-server-2005

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

如何检查SQL Server代理是否正在运行

我正在使用SQL Server 2008 r2.我想找到一种方法来验证SQL Server代理是否正在运行.我怀疑代理没有运行,但我不知道如何检查.

sql-server asp.net session session-state sql-server-2008

13
推荐指数
3
解决办法
4万
查看次数

13
推荐指数
4
解决办法
3万
查看次数

`nodes()`方法是否保持文档顺序?

数据类型的nodes()方法是否按xml文档顺序返回节点?

例如,如果有以下数据:

declare @xml xml
set @xml = '<Fruits><Apple /><Banana /><Orange /><Pear /></Fruits>'
Run Code Online (Sandbox Code Playgroud)

被查询为

select T.c.query('.')
from @xml.nodes('/Fruits/*') T(c)
Run Code Online (Sandbox Code Playgroud)

元素将按文档顺序返回吗?select如果order by省略了子句,则返回的行的顺序是未定义的.是这样的select ... from ... .nodes(),还是特殊的?

在某些情况下,是否可以在以下查询的输出中获取非空行集:

declare @xml xml
set @xml = '<Data><Element OrderNo="1" /><Element OrderNo="2" />'
  + '<Element OrderNo="3" /><Element OrderNo="4" />'
  + '<Element OrderNo="5" /></Data>'

select * from (
    select T.c.value('.', 'int') OrderNo1, 
      row_number() over (order by @@spid) OrderNo2
    from @xml.nodes('/Data/Element/@OrderNo') T(c)) sq
where OrderNo1 != OrderNo2
Run Code Online (Sandbox Code Playgroud)

xml t-sql sql-server

13
推荐指数
1
解决办法
2498
查看次数

使用分组将许多行连接到单个文本字符串中

我有下表:tblFile

tblFile

我想要的输出:

在此输入图像描述

我将许多行连接成一个文本字符串; 但是,我无法正确分组.现在代码只显示FileNameString字段中的每条记录:AAA,BBB,CCC,DDD,EEE,FFF

任何有关分组的建议!

SELECT FileID, Stuff(
(SELECT     N', ' + CONVERT(Varchar, FileName) 
FROM         tblFile  FOR XML PATH(''),TYPE )
.value('text()[1]','nvarchar(max)'),1,2,N'')AS FileNameString 
From tblFile
GROUP BY FileID
Run Code Online (Sandbox Code Playgroud)

xml sql t-sql sql-server string-concatenation

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