我已经查看了其他问题并且无法找到我正在寻找的东西我有一个SQL数据库,其中有一个名为InventoryAllocations的表.在表格中,我有多个DocumentID条目,并希望检索每个唯一DocumentID的最后一个条目.我可以通过执行来检索一个
SELECT top(1) [UID]
,[RecordStatusID]
,[CreatedDate]
,[CreatedTime]
,[CreatedByID]
,[OperationType]
,[InventoryLocationID]
,[DocumentTypeID]
,[DocumentID]
,[SOJPersonnelID]
,[InventorySerialisedItemID]
,[TransactionQty]
,[TransactionInventoryStatusID]
,[Completed]
,[CreatedByType]
,[RecordTimeStamp]
FROM [CPData].[dbo].[InventoryAllocations]
order by DocumentID desc
Run Code Online (Sandbox Code Playgroud)
但我想让它带回一个包含所有唯一DocumentID的列表.我希望你能提供帮助.非常感谢Hannah x
这是我正在使用的表格:
我想仅识别具有不同参数的重复扣减ID的ReviewID.
例如,在上图中,ReviewID 114具有两个不同的参数ID,但两个记录具有相同的扣除ID.
就我的目的而言,此记录(ReviewID 114)有错误.对于单个ReviewID,不应存在两个或多个具有相同扣减ID的唯一参数ID.
我想写一个查询来识别这些类型的记录,但我的SQL技能还没有.救命?
谢谢!
更新1:我正在使用TSQL(SQL Server 2008),如果这有助于
更新2:我正在寻找的输出将与上面的图像相同,减去任何与我所描述的标准不匹配的记录.
干杯!
我正在查询一个应付帐款表,其中包含ap文档列表,其中每个文档都包含我感兴趣的(以及其他字段)运行聚合查询的文件:
vendor_id,金额和日期.
我想在这个表上构建查询到我将获得的位置,按年份排序,前10名供应商按总数(金额总和)排序.
有人会告诉我如何使用排名功能.
我在MS SQL 2008 R2中有一个存储过程(SP)我正在构建,它需要一个用户列表来缩小返回的数据.
我正在使用的系统有一个GetUsers SP,它返回一个用户列表,然后我需要使用它来限制从我自己工作的SP返回的结果.
我看过TABLE变量,但不确定这是否是我需要的.
我如何将一个SP的结果整合到另一个SP的where子句中?
我正试图
select columns Age, Height, House_number, Street
from my_table
where count(combination of House_number, Street)
occurs more than once.
Run Code Online (Sandbox Code Playgroud)
我的桌子看起来像这样
Age, Height, House_number, Street
15 178 6 Mc Gill Crst
85 166 6 Mc Gill Crst
85 166 195 Mc Gill Crst
18 151 99 Moon Street
52 189 14a Grimm Lane
Run Code Online (Sandbox Code Playgroud)
我期望的结果看起来像这样
Age, Height, House_number, Street
15 178 6 Mc Gill Crst
85 166 6 Mc Gill Crst
Run Code Online (Sandbox Code Playgroud)
卡住!
我花了几个小时研究一个非常简单的T-SQL语句的答案.
情况就是这样.我想通过帮助台数据库进行报告.我有一个表(calllog),其中包含有关故障单的基本非重复信息和另一个事务表(Asgnmnt),其中包含对不同人员的各种分配以解决问题.我只是想确定Asgnmnt表中的最后一个分配,将它与呼叫日志文件链接,并使用外部选择中的数据来进行更多的数据报告.Asgnmnt表包含一个字段调用HEATSeq.给定CallID的最高HEATSeq将是最后一次分配.这是我的T-SQL语句和错误.
SELECT
Callid,
Priority,
RecvdDate,
RecvdTime,
ClosedDate,
ClosedTime,
CustID,
CallType,
CallDesc,
HeatSEQ#
FROM
(Select
a.Callid,
a.Priority,
a.RecvdDate,
a.RecvdTime,
a.ClosedDate,
a.ClosedTime,
a.CustID,
a.CallType,
a.CallDesc,
(select TOP 1 HEATSeq from Asgnmnt f
WHERE a.CallID = f.CallID
ORDER BY HEATSeq desc) as HeatSeq#
FROM dbo.CallLog a
where a.CallID = '00520308') as z
LEFT OUTER JOIN dbo.Asgnmnt c on z.Callid=c.CallID and z.HeatSeq# = c.HEATSeq
Run Code Online (Sandbox Code Playgroud)
这是[错误]
Msg 209, Level 16, State 1, Line 2
Ambiguous column name 'Callid'.
Msg 209, Level 16, State 1, …
Run Code Online (Sandbox Code Playgroud) 我有一个尴尬的SQL拼图,它击败了我.
我正在尝试生成学生单元的可能配置列表,以便我可以将他们的课程选择纳入时间表.学生可能的资格和学习列表如下:
Biology A
Biology C
Biology D
Biology E
Chemistry B
Chemistry C
Chemistry D
Chemistry E
Chemistry F
Computing D
Computing F
Tutorial A
Tutorial B
Tutorial E
Run Code Online (Sandbox Code Playgroud)
可以为学生提供可能的积木解决方案
Biology D
Chemistry C
Computing F
Tutorial E
Run Code Online (Sandbox Code Playgroud)
如何查询上述数据集,为学生生成课程和块的所有可能组合?然后,我可以削减列表,删除那些冲突并选择一个有效的列表.我估计在这种情况下总共会有大约120种组合.
我可以想象它会是某种交叉连接.我已经尝试了使用窗口函数和交叉应用等各种解决方案,但它们都有一些缺陷.他们都往往被绊倒,因为每个学生都有不同数量的课程,每门课程都有不同数量的课程.
欢呼为您提供任何帮助!如果有必要,我可以粘贴在我的查询的粗糙混乱中!
亚历克斯
不幸的是,SQL并不是很容易找到我.我有两张桌子,一张Loan
桌子和一张LoanPayments
桌子.
LoanPayments表:
ID(主键),LoanID(与贷款表上的ID匹配),PaymentDate,Amount等.
我需要一个sql语句,它可以给我每月输入的最后一笔付款(如果有的话).我目前的陈述并没有给我结果.还有一个问题是,有时候那个月的最大日期会有一个平局,所以我也需要能够处理它(我的想法是在平局的情况下选择最大的ID).
这是我到目前为止(我知道这是错的,但我不知道为什么.):
SELECT lp.ID, lp.LoanID, lp.PaymentDate
FROM LoanPayments lp
WHERE lp.PaymentDate in (
SELECT DISTINCT MAX(PaymentDate) as PaymentDate
FROM LoanPayments
WHERE IsDeleted = 0
AND ReturnDate is null
GROUP BY YEAR(PaymentDate), Month(PaymentDate)
)
AND CAST(PaymentDate as date) >= CAST(DATEADD(mm, -24, GETDATE()) as date)
Run Code Online (Sandbox Code Playgroud)
最后一部分只是过滤它,所以我只收到过去24个月的付款.感谢您的帮助,并花时间帮助我解决这个问题.