下面是现有的ms sql server 2008报表查询。使用多个条件选择查询
SELECT
number, batchtype, customer, systemmonth, systemyear, entered, comment, totalpaid
FROM
payhistory LEFT OUTER JOIN agency ON
payhistory.SendingID = agency.agencyid
WHERE
payhistory.batchtype LIKE 'p%' AND
payhistory.entered >= '2011-08-01 00:00:00.00' AND
payhistory.entered < '2011-08-15 00:00:00.00' AND
payhistory.systemmonth = 8 AND
payhistory.systemyear = 2011 AND
payhistory.comment NOT LIKE 'Elit%'
结果会是这样的:
number batchtype customer systemmonth systemyear entered comment totalpaid
6255756 PC EMC1106 8 2011 12:00:00 AM DP From - NO CASH 33
5575317 PA ERS002 8 2011 12:00:00 AM MO-0051381526 7/31 20
6227031 PA FTS1104 8 2011 12:00:00 AM MO-10422682168 7/30 25
6232589 PC FTS1104 8 2011 12:00:00 AM DP From - NO CASH 103
2548281 PC WAP1001 8 2011 12:00:00 AM NCO DP $1,445.41 89.41
4544785 PCR WAP1001 8 2011 12:00:00 AM NCO DP $1,445.41 39
我所要做的是修改将排除记录的查询,其中客户是像“FTS%”和“EMC%”和batchtype ='PC'。正如你可以在结果集中看到的那样,客户的记录就像FTS%和batchtype ='PA'。我想在结果中保留这些记录。我希望提供任何想法。
你得到的不良结果是什么? – CamelSlack
那么,为什么你说“只有当btype ='PC'”,然后把'btype <>'PC''? – Lamak
你的SQL有一个额外的括号,或者它缺少一个... – Matthew