Sql server 如何在MS SQL SERVER 2012中构造查询以获得单行输出
我是MS SQL编程的新手,但我需要这个问题的帮助,我想从另一个表中获取订阅类型,如果它们满足某些条件,则将它们作为列名。此查询正在工作,但它将复制结果集,这不是我希望这些查询工作的内容。以下是我的疑问 这是我想要的示例输出Sql server 如何在MS SQL SERVER 2012中构造查询以获得单行输出,sql-server,sql-server-2012,Sql Server,Sql Server 2012,我是MS SQL编程的新手,但我需要这个问题的帮助,我想从另一个表中获取订阅类型,如果它们满足某些条件,则将它们作为列名。此查询正在工作,但它将复制结果集,这不是我希望这些查询工作的内容。以下是我的疑问 这是我想要的示例输出 divisionsname Benchmark Goalgetter Tax Credits aaa Yes No Yes bbb No Ye
divisionsname Benchmark Goalgetter Tax Credits
aaa Yes No Yes
bbb No Yes Yes
But the code give me something like this
divisionsname Benchmark Goalgetter Tax Credits<Br>
aaa Yes No No
aaa No No Yes
bbb No Yes No
bbb No No Yes
问题是
SELECT sectors.name AS Sector_name,
companies.name AS Company_Name,
divisions.name AS Primary_Office,
Addresses.address1 AS Address1,
Addresses.address2 AS Address2,
Addresses.address3 AS Address3,
Addresses.town AS Town,
Addresses.postcode AS Postcode,
Counties.name AS County,
Countries.name AS Country,
divtelephone.details AS Telephone,
membershiptypes.description AS Membership_Type,
CASE contacts.titletype
WHEN 1 THEN 'None'
WHEN 2 THEN 'Mr'
WHEN 3 THEN 'Mrs'
WHEN 4 THEN 'Miss'
WHEN 5 THEN 'Ms'
WHEN 6 THEN 'Master'
WHEN 7 THEN 'Dr'
WHEN 8 THEN 'Rev'
WHEN 9 THEN 'Sir'
WHEN 10 THEN 'Capt'
WHEN 11 THEN 'Prof'
ELSE 'N/A'
END AS Salutation,
Contacts.firstname AS Firstname,
Contacts.lastname AS Lastname,
contactemailaddress.details AS Email_Adress,
CASE subscriptionhistories.subscriptiontype_id
WHEN 1 THEN 'yes'
ELSE 'no'
END AS Benchmark,
CASE subscriptionhistories.subscriptiontype_id
WHEN 2 THEN 'yes'
ELSE 'no'
END AS GoalGetter,
CASE subscriptionhistories.subscriptiontype_id
WHEN 3 THEN 'yes'
ELSE 'no'
END AS TaxCredits,
CASE subscriptionhistories.subscriptiontype_id
WHEN 7 THEN 'yes'
ELSE 'no'
END AS PMILicense,
CASE subscriptionhistories.subscriptiontype_id
WHEN 8 THEN 'yes'
ELSE 'no'
END AS '£2mfromPMIevent',
CASE subscriptionhistories.subscriptiontype_id
WHEN 9 THEN 'yes'
ELSE 'no'
END AS PMIplus,
CASE subscriptionhistories.subscriptiontype_id
WHEN 10 THEN 'yes'
ELSE 'no'
END AS ConsultingTraining,
CASE subscriptionhistories.subscriptiontype_id
WHEN 11 THEN 'yes'
ELSE 'no'
END AS EP_OutrightPurchaseofModule1,
CASE subscriptionhistories.subscriptiontype_id
WHEN 12 THEN 'yes'
ELSE 'no'
END AS EP_OngoingSubscription,
CASE subscriptionhistories.subscriptiontype_id
WHEN 13 THEN 'yes'
ELSE 'no'
END AS UseofLogo,
CASE subscriptionhistories.subscriptiontype_id
WHEN 14 THEN 'yes'
ELSE 'no'
END AS PMI,
CASE subscriptionhistories.subscriptiontype_id
WHEN 15 THEN 'yes'
ELSE 'no'
END AS BusinessBuilderForum,
CASE subscriptionhistories.subscriptiontype_id
WHEN 16 THEN 'yes'
ELSE 'no'
END AS BusinessConsulting,
CASE subscriptionhistories.subscriptiontype_id
WHEN 17 THEN 'yes'
ELSE 'no'
END AS '4PSalesandMarketing',
CASE subscriptionhistories.subscriptiontype_id
WHEN 18 THEN 'yes'
ELSE 'no'
END AS PeopleandLeadership,
CASE subscriptionhistories.subscriptiontype_id
WHEN 19 THEN 'yes'
ELSE 'no'
END AS BuildingaBetterTaxPractice,
CASE subscriptionhistories.subscriptiontype_id
WHEN 20 THEN 'yes'
ELSE 'no'
END AS SensationalService,
CASE subscriptionhistories.subscriptiontype_id
WHEN 21 THEN 'yes'
ELSE 'no'
END AS Systemisation,
CASE subscriptionhistories.subscriptiontype_id
WHEN 22 THEN 'yes'
ELSE 'no'
END AS TaxConference2011,
CASE subscriptionhistories.subscriptiontype_id
WHEN 23 THEN 'yes'
ELSE 'no'
END AS PayLessTax,
CASE subscriptionhistories.subscriptiontype_id
WHEN 24 THEN 'yes'
ELSE 'no'
END AS TaxNDA,
CASE subscriptionhistories.subscriptiontype_id
WHEN 25 THEN 'yes'
ELSE 'no'
END AS SBPurchasedPre2013,
CASE subscriptionhistories.subscriptiontype_id
WHEN 26 THEN 'yes'
ELSE 'no'
END AS SBStarterPack,
CASE subscriptionhistories.subscriptiontype_id
WHEN 27 THEN 'yes'
ELSE 'no'
END AS SBStandardBusinessContent,
CASE subscriptionhistories.subscriptiontype_id
WHEN 28 THEN 'yes'
ELSE 'no'
END AS WebHosting,
CASE subscriptionhistories.subscriptiontype_id
WHEN 30 THEN 'yes'
ELSE 'no'
END AS Migration,
CASE subscriptionhistories.subscriptiontype_id
WHEN 31 THEN 'yes'
ELSE 'no'
END AS GSRB2BB2C,
CASE subscriptionhistories.subscriptiontype_id
WHEN 32 THEN 'yes'
ELSE 'no'
END AS Migration,
CASE subscriptionhistories.subscriptiontype_id
WHEN 33 THEN 'yes'
ELSE 'no'
END AS EPOSoftwareUpgrade,
CASE subscriptionhistories.subscriptiontype_id
WHEN 34 THEN 'yes'
ELSE 'no'
END AS EPMOdule2,
CASE subscriptionhistories.subscriptiontype_id
WHEN 35 THEN 'yes'
ELSE 'no'
END AS EPMOdule3,
CASE subscriptionhistories.subscriptiontype_id
WHEN 36 THEN 'yes'
ELSE 'no'
END AS EPModule4,
CASE subscriptionhistories.subscriptiontype_id
WHEN 37 THEN 'yes'
ELSE 'no'
END AS EPModule5,
CASE subscriptionhistories.subscriptiontype_id
WHEN 38 THEN 'yes'
ELSE 'no'
END AS EPModule6,
CASE subscriptionhistories.subscriptiontype_id
WHEN 39 THEN 'yes'
ELSE 'no'
END AS EPModule7,
CASE subscriptionhistories.subscriptiontype_id
WHEN 40 THEN 'yes'
ELSE 'no'
END AS EPModule8,
CASE subscriptionhistories.subscriptiontype_id
WHEN 41 THEN 'yes'
ELSE 'no'
END AS EPModule9,
CASE subscriptionhistories.subscriptiontype_id
WHEN 42 THEN 'yes'
ELSE 'no'
END AS EPModule10,
CASE subscriptionhistories.subscriptiontype_id
WHEN 43 THEN 'yes'
ELSE 'no'
END AS EPModule11,
CASE subscriptionhistories.subscriptiontype_id
WHEN 44 THEN 'yes'
ELSE 'no'
END AS EPBonusModule,
CASE subscriptionhistories.subscriptiontype_id
WHEN 49 THEN 'yes'
ELSE 'no'
END AS AccountantsChangingtheWorld,
CASE subscriptionhistories.subscriptiontype_id
WHEN 50 THEN 'yes'
ELSE 'no'
END AS AVNExcellence4Star,
CASE subscriptionhistories.subscriptiontype_id
WHEN 51 THEN 'yes'
ELSE 'no'
END AS AVNExcellence5Star,
CASE subscriptionhistories.subscriptiontype_id
WHEN 52 THEN 'yes'
ELSE 'no'
END AS ANVExcellence6Star,
CASE subscriptionhistories.subscriptiontype_id
WHEN 53 THEN 'yes'
ELSE 'no'
END AS BWSFeeProtection,
CASE subscriptionhistories.subscriptiontype_id
WHEN 54 THEN 'yes'
ELSE 'no'
END AS CoreEmployeeBenefits,
CASE subscriptionhistories.subscriptiontype_id
WHEN 55 THEN 'yes'
ELSE 'no'
END AS Suspended
FROM contacts
INNER JOIN divisions ON divisions.id = contacts.division_id
AND divisiontype=1
AND contacttype=2
AND (contacts.isdeleted<>1
AND divisions.isdeleted<>1)
INNER JOIN companies ON companies.id = divisions.company_id
AND (companies.isdeleted<>1)
INNER JOIN sectors ON sectors.id = companies.sector_id
INNER JOIN addresses ON addresses.id = divisions.company_id
INNER JOIN counties ON counties.id = Addresses.county_id
INNER JOIN countries ON countries.id = counties.country_id
LEFT OUTER JOIN subscriptionhistories ON subscriptionhistories.entityid = divisions.id
AND (subscriptionhistories.startdate < GETDATE()
AND (subscriptionhistories.enddate IS NULL
OR subscriptionhistories.enddate > GETDATE()))
INNER JOIN subscriptiontypes ON subscriptiontypes.id = subscriptionhistories.subscriptiontype_id
AND Subscriptiontypes.entitytype=2
LEFT OUTER JOIN communicationmethods AS divtelephone ON divtelephone.entitytype = 2
AND divtelephone.communicationmethodtype = 5
AND divtelephone.entityid = divisions.id
LEFT OUTER JOIN communicationmethods AS contactemailaddress ON contactemailaddress.entitytype=3
AND contactemailaddress.communicationmethodtype=1
AND contactemailaddress.entityid = contacts.id
INNER JOIN membershiphistories ON membershiphistories.company_id = companies.id
AND (membershiphistories.startdate < GETDATE()
AND (membershiphistories.enddate IS NULL
OR membershiphistories.enddate > GETDATE()))
INNER JOIN membershiptypes ON membershiptypes.id = membershiphistories.membershiptype_id
任何帮助都将不胜感激。谢谢你们。你们想要什么?还是不清楚你们想要什么…请格式化你们的问题?很难阅读!!!对不起,伙计们,我对这个网站还是新手。我已经格式化了我想要的输出是什么样子的问题。