所以我知道这件事已经死了,但我真的很纠结。在工作中,我有Server 2008,有人要求我做一个运行的总计,所以我没有窗口函数。这意味着我必须以传统的方式来完成这个任务,因此,为了了解这一点,我使用了AdventureWorks 2012数据库,并试图在totaldue上对sales.salesorderheader表中的每个salesorderid进行运行总计。有关栏为:
salesorderid int not null
customerid int not null
totaldue money not null
到目前为止,我的情况如下:
select soh1.salesorderi
我试图从工作表( soh )中获取股票数量,然后将它们更新到Sheet(Report) soh列。但是,我有一个问题,要将多个值索引到单个单元格中。我正在使用"Application.Index“代码如下所示,任何帮助都将不胜感激!
Sub Fillstock_Test()
'Get qty, from SOH to Report'
Dim i, lr, sold As Long
Dim soh As Variant
Dim sku, soh_str As String
lr = Sheets("Report").Cells(Rows.Count,
数据库- Microsoft
表- Sales.SalesOrderHeader
问题--客户(即客户in )在2003年3月或4月订购的,但不是两者兼备。
概念-
获取蓝色部件(A特有的元素/行)和B特有的元素/行。
我的查询-
select Soh.CustomerID, Soh.OrderDate
from Sales.SalesOrderHeader as Soh
where Soh.OrderDate >= '2003-03-01' AND Soh.OrderDate < '2003-04-01' -- march only
UN
使用AdventureWorks2014 db,我希望选择以下数据:对于每个客户,我希望从他的第一次订单起12个月内得到他的所有订单。最后我得到了那个解决方案:
WITH dates AS
(
SELECT soh.CustomerID
,MIN(soh.OrderDate) AS MinOrderDate
,DATEADD(MONTH, 12, MIN(soh.OrderDate)) as MaxOrderDate
FROM Sales.SalesOrderHeader soh
JOIN Sales.SalesOrderDetail sod ON sod.SalesOrde
我的salesOrderheader表中有Shipdate和Totaldue列。
我当前的查询如下
select
[ShipDate], SUM([TotalDue]) Total
from
Sales.SalesOrderHeader
where
[ShipDate] between '2005-08-1' and '2005-08-31'
group by
[ShipDate]
这将返回每一天的总销售额的结果,我想要一个结果,其中每个日期列对应于一个值,该值显示月份到日期的销售(即此处的总计)。就像
select * from
(
SELECT datename( Month,soh.OrderDate)[Month], sd.OrderQty as orderQty
from Sales.SalesOrderHeader soh
join Sales.SalesOrderDetail sd
on soh.SalesOrderID = sd.SalesOrderID
)t
pivot(
sum(orderQty)
for [month] in ([january],[february],[march],[april],[may],[june],[july],[august],[septem
我在Access方面有经验,并且在Server方面有大约12个月的经验。
我没有得到结果,我希望左外接,我不知道为什么。也许我不明白什么。
我有表1(左边)和600k产品,我有表2和15万产品(表1的子集)。
当我这么做的时候
SELECT [Product_Code], [Product_Desc], Store
FROM [Product Range]
我有60万张唱片
当我像这样左转时
SELECT [Product_Code], [Product_Desc], r.store, soh.SOH
FROM [Product Range] as r
LEFT J
SELECT year(soh.OrderDate) 'year',sum(soh.TotalDue) 'Total',st.[Group] TerritoryGroup
FROM Sales.SalesOrderHeader soh
LEFT OUTER JOIN Sales.SalesTerritory st
ON soh.TerritoryID=st.TerritoryID
GROUP BY year(soh.OrderDate
问题:我是SQL的初学者,想要验证我对左外部连接的理解(使用and数据库)。我已经理解了简单的左外部连接是如何工作的。它将整个表放在左边,并匹配它能找到的任何右边的值,否则它为右边留下一个NULL。我有点困惑的是,当你有一系列的内部连接,然后是一个左外部连接。所以我的问题是,对于下面的代码,考虑到左侧,左侧外部连接是哪一侧?是否为FROM之后的值:
FROM **Person.Person** AS Pp
或者是否引用了某个内连接表?请看下面的代码,谢谢!
DECLARE @Date AS NVARCHAR(60)
SET @Date = '2013-01-01'
DECLA
所用代码:
SELECT
ROUND(SUM(COALESCE(p.[Weight], 0)), 2) AS [Total weight]
FROM
SalesLT.SalesOrderHeader soh
JOIN
SalesLT.SalesOrderDetail sod ON sod.SalesOrderID = soh.SalesOrderID
JOIN
SalesLT.Product p ON p.ProductID = sod.ProductID
WHERE
DATEPART(YEAR, soh.DueDate) = '2017&
我正在试着根据他们的总销售额找出前5名销售人员。我想展示销售代表的名字,以及他们的总销售额,我在AdventureWorks工作。
一直让我感到困惑的是GROUP BY语句。在下面的查询中,我不确定为什么GROUP BY不能工作。我确信有一种更有效的方法可以做到这一点,但在这一点上,我只是试图真正学习连接和子查询,而GROUP BY的工作方式似乎并不是我所掌握的。
SELECT SalesLT.Customer.SalesPerson, SUM(repjoin.TotalDue) OVER (PARTITION BY repjoin.salesperson)
FROM SalesLT.cust
以下查询给我2714行:
SELECT soh.No
FROM OpenSalesOrdersH soh
LEFT JOIN OpenSalesOrdersL sol ON sol.Number = soh.No
WHERE sol.Number IS NOT NULL
GROUP BY soh.No
HAVING COUNT(sol.line_no) > 0
我需要的是一个选择,它会把2714放入一个变量中。有点像
select @numTotalOpenSalesOrders=count(soh.A_Import_Set_No)
但这只给了我2714行“1”。我试过SUM,看看我能不
我有一个表,其中显示了每个交易的地区、年份、月份和销售额。我需要按月份和地区合并事务,以便返回每个地区的月度销售额列表。当我使用group by命令时,它返回以下错误消息。消息8120,第16级,状态1,第1行列'sales.SalesTerritory.Name‘在选择列表中无效,因为它既未包含在聚合函数中,也未包含在GROUP BY子句中。 SELECT name as TerritoryName,
datepart(yy,soh.OrderDate)as Year,
datepart(MM,soh.orderdate) as Month,
round(SubTotal,0)
我不知道为什么我的SQL代码不能工作。我正在寻找一种方法来在请求的年份应用条件,但如果它不存在,它应该显示全年。不管怎么说,代码不能工作。
CREATE FUNCTION SALES_YEAR(@year int=0) RETURNS TABLE
AS
RETURN
IF EXISTS(SELECT 1 FROM AdventureWorks2014.Sales.SalesOrderHeader where
Year(OrderDate)=@year)
SELECT Year(OrderDate) as
[YEAR],SOH.TerritoryId,convert(varchar,SUM
我试图计算不同资源的滚动时间表状态日期。
Use AdventureWorks2012;
IF OBJECT_ID('TempTable1', 'U') IS NOT NULL
DROP TABLE TempTable1
SELECT SOH.SalesPersonID, SOD.ProductId as ResourceID,
SOH.DueDate as DueDate,
SOD.OrderQty as DayIncrement,
DATEADD(Day, SOD.OrderQty, SOH.DueDa
我希望得到一个查询,返回最大的订单信息,一周一周。
我的基本概念是这样的:
select
datepart(ww, order_date), order_id, order_revenue, order_margin
from
orders
where
order_date >= 1/1/2016
and order_id in (select max order for each week)
基本上,我只需要每周最大订单保证金记录的周数、订单id、订单收入和订单保证金。
我正在寻找一些关于我试图通过使用SQL Server2014的AdventureWorks2012实现的结果的帮助。
我试图实现的结果是每个销售人员在会计季度的总销售额。
我希望结果是每行1名销售人员,其中包括Q1、Q2、Q3、Q4的总销售额(2012年7月至2013年6月)
SELECT DISTINCT
pp.LastName, sp.BusinessEntityID AS SalesPersonID,
SUM(CASE
WHEN MONTH(soh.OrderDate) BETWEEN 7 AND 9 THEN soh.SubTotal END)
我编写了一个查询来获取personID的每个日期的总数,我想要做的是使用存储过程将结果插入到一个新表中,我的查询类似于引用(使用AdventureWorks2019)。
WITH TOP7 AS
(
SELECT
SOH.SalesPersonID, SOH.OrderDate,
SUM(SOH.TotalDue) AS Total,
ROW_NUMBER() OVER (PARTITION BY SOH.SalesPersonID ORDER BY SOH.OrderDate DESC) AS RowNum
FROM
写一个UDF接受订单日期和装运日期。让UDF返回在用户输入的订单日期和发货日期之间发生的销售订单数量(使用Vista信用卡)。
(该表是Server 2012中的Sales-SalesOrderHeader in AdventureWorks2012 )。
看来我必须引用Sales-CreditCard表才能得到确切的卡名,因为Sales.SalesOrderHeader表中没有提供这个名称:
CREATE FUNCTION fx_SalesNmbr INT
(SELECT OrderDate, ShipDate
FROM Sales.SalesOrder
我有问题让这段代码工作。使用AdventureWorks2012,我的任务是列出订单的客户名称、订单状态、订购日期、订单上的商品数量,以及订单上商品数量大于300的平均订购数量。这就是我想出来的,但它不能编译。有什么建议吗? SELECT soh.CustomerID, soh.Status, soh.OrderDate, COUNT(sod.OrderQty), AVG(sod.OrderQty)
FROM Sales.SalesOrderHeader AS soh
JOIN Sales.SalesOrderDetail AS sod ON soh.SalesOrderID = sod.S
有一个查询返回一个临时表。TSQL查询:
SELECT
CAST(SOH.OrderDate AS DATE) as DateYMD,
P.LastName,
P.FirstName,
PP.[Name] + ' Qty: ' + CAST(SOD.OrderQty AS varchar(10)) as [OrderContent]
FROM Person.Person as P
JOIN Sales.Customer SC ON P.BusinessEntityID = SC.PersonID
JOIN Sales.Sale
我有几个FoxPro prg已经使用了很多年。现在我们正在慢慢地尝试实现Server的使用,我正在尝试用prg来实现这一点。我已经创建了两个链接到我们正在使用的.dbf文件的服务器,这些服务器都很好用。现在,我正试图找出如何转换或翻译prg代码,以便我可以在水晶报表查询中使用它。我知道基本的SQL查询,如果我用一个简单的查询测试链接的服务器,那么所有这些都可以在Crystal中正常工作。但是,一些prg是相当复杂的,使用游标,这是我正在努力的。下面是一个示例:
Select soheader.partno As Item,;
soheader.sono As sono,;
soheader.r
我希望使用实体框架来实现以下SQL Server等价物。原始SQL如下: SELECT
C.CustomerID,
P.Title,
P.FirstName,
P.LastName,
SOH.SalesOrderNumber,
SOH.SubTotal,
SOH.TotalDue,
SOH.OrderDate,
SOH.ShipDate,
SOD.UnitPrice,
SOD.LineTotal
FROM Sales.Customer AS C
INNER JOIN Person.Person AS P ON P.BusinessEntityID = C.PersonID
LE
我正在AdventureWorks2014数据库工作,需要为那些在2011年和2014年都下订单的客户检索客户的ID。到目前为止,我有一个疑问:
SELECT CustomerID, SalesOrderID, YEAR(OrderDate) AS 'Year'
FROM Sales.SalesOrderHeader
WHERE YEAR(OrderDate) IN (2011,2014)
HAVING COUNT(YEAR(OrderDate))=2;
但是,当我试图运行它时,我会得到一个错误:
列'Sales.SalesOrderHeader.CustomerI