我来自一个带有一点mySQL的访问背景,所以当谈到SQL时我有点迷失。
以下是我正在使用的查询:
Select
tbl_AcerPFSSurveyIVR.NTlogin,
tbl_AcerPFSSurveyIVR.Customer_Firstname,
tbl_AcerPFSSurveyIVR.Customer_Lastname,
tbl_AcerPFSSurveyIVR.CaseId,
tbl_AcerPFSSurveyIVR.ContactNumber,
CRM_TRN_ORDER.ORDER_PRICE,
CRM_TRN_ORDER.ORDER_CREATEDDATE
这会返回正确的记录,但我想要最后一个......我知道我应该使用这样的东西......
SELECT TOP 1 *
FROM table_Name
ORDER BY unique_column DESC
我迷路的地方,如果我这么说的话,你只能做一个选择......所以如何整合这两个?在此先感谢您的帮助。
答案 0 :(得分:2)
你想要的是:
SELECT TOP(1)
tbl_AcerPFSSurveyIVR.NTlogin,
tbl_AcerPFSSurveyIVR.Customer_Firstname,
tbl_AcerPFSSurveyIVR.Customer_Lastname,
tbl_AcerPFSSurveyIVR.CaseId,
tbl_AcerPFSSurveyIVR.ContactNumber,
CRM_TRN_ORDER.ORDER_PRICE,
CRM_TRN_ORDER.ORDER_CREATEDDATE
FROM
tbl_AcerPFSSurveyIVR
JOIN CRM_TRN_ORDER
ON tbl_AcerPFSSurveyIVR.CustomerId = CRM_TRN_ORDER.CUSTOMERID
ORDER BY
CRM_TRN_ORDER.ORDER_CREATEDDATE DESC
注意:我编写了JOIN子句,因为我不知道你的架构。假设存在某种外键关系,您应该选择满足连接的实际列。否则,您只需要购买笛卡尔产品,这很可能不是您想要的。但是,您可以通过使用“FROM tbl_AcerPFSSurveyIVR,CRM_TRN_ORDER”替换上面的FROM ... JOIN子句来实现此目的。
答案 1 :(得分:0)
你试过了吗?
Select TOP (1)
tbl_AcerPFSSurveyIVR.NTlogin,
tbl_AcerPFSSurveyIVR.Customer_Firstname,
tbl_AcerPFSSurveyIVR.Customer_Lastname,
tbl_AcerPFSSurveyIVR.CaseId,
tbl_AcerPFSSurveyIVR.ContactNumber,
CRM_TRN_ORDER.ORDER_PRICE,
CRM_TRN_ORDER.ORDER_CREATEDDATE
FROM Table_Name ORDER BY unique_Column DESC
这包括上一个查询中的前1个,并按降序同时过滤请求。我理所当然地认为第一个SELECT
来自table_name
。