Please start any new threads on our new
site at https://forums.sqlteam.com. We've got lots of great SQL Server
experts to answer whatever question you can come up with.
| Author |
Topic |
|
Venu@wfis
Starting Member
16 Posts |
Posted - 2009-04-20 : 11:14:45
|
| Hi To fetch a report from SQl I am using the below query. Here, I am trying to get the basic data in to a Temp table and then customize the data. Is there any way out of doing this without using a temp table ie. with only a select statements:Please help...use [migration_mtg_bau_db]create table #TestStatus(TestSetName varchar(200),ExecutionStatus varchar(50), [Number] int)insert into #TestStatus ( TestSetName, ExecutionStatus, [Number])SELECT (CF_ITEM_Name + ' : ' +CY_CYCLE), TC_STATUS, count (tc_status) FROM td.TESTCYCL a, td.CYCLE b, td.CYCL_FOLD x, td.TEST yWhere a.TC_CYCLE_ID = b.CY_CYCLE_ID and y.TS_TEST_ID = a.TC_TEST_ID and b.CY_FOLDER_ID = x.CF_ITEM_IDand CF_ITEM_ID in (select cf_item_id from td.cycl_fold where cf_father_id in (select CF_ITEM_ID from td.cycl_fold where cf_father_id =1358) union select CF_ITEM_ID from td.cycl_fold where cf_father_id =1358)GROUP BY (CF_ITEM_Name + ' : ' +CY_CYCLE), TC_STATUSSELECT TestSetName, sum(Number) as [Total],sum(CASE WHEN ExecutionStatus='Passed' THEN Number ELSE 0 END) AS Passed,sum(CASE WHEN ExecutionStatus='Failed' THEN Number ELSE 0 END) AS Failed,sum(CASE WHEN ExecutionStatus='No Run' THEN Number ELSE 0 END) AS NoRun,sum(CASE WHEN ExecutionStatus='Not Completed' THEN Number ELSE 0 END) AS NotCompleted--sum(CASE WHEN ExecutionStatus in ('No Run', 'Not Completed') THEN Number ELSE 0 END) AS [NoRun|NotCompleted]FROM #TESTSTATUSgroup by TestSetName drop table #TestStatusThank you. Please do the needful ASAP if possible. |
|
|
Transact Charlie
Master Smack Fu Yak Hacker
3451 Posts |
Posted - 2009-04-20 : 11:25:51
|
Well yes -- of course there is using derived tables:SELECT TestSetName, sum(Number) as [Total],sum(CASE WHEN ExecutionStatus='Passed' THEN Number ELSE 0 END) AS Passed,sum(CASE WHEN ExecutionStatus='Failed' THEN Number ELSE 0 END) AS Failed,sum(CASE WHEN ExecutionStatus='No Run' THEN Number ELSE 0 END) AS NoRun,sum(CASE WHEN ExecutionStatus='Not Completed' THEN Number ELSE 0 END) AS NotCompleted--sum(CASE WHEN ExecutionStatus in ('No Run', 'Not Completed') THEN Number ELSE 0 END) AS [NoRun|NotCompleted]FROM (SELECT (CF_ITEM_Name + ' : ' +CY_CYCLE) AS [testSetName], TC_STATUS AS [ExecutionStatus], count (tc_status) AS [Number] FROM td.TESTCYCL a, td.CYCLE b, td.CYCL_FOLD x, td.TEST yWhere a.TC_CYCLE_ID = b.CY_CYCLE_ID and y.TS_TEST_ID = a.TC_TEST_ID and b.CY_FOLDER_ID = x.CF_ITEM_IDand CF_ITEM_ID in (select cf_item_id from td.cycl_fold where cf_father_id in (select CF_ITEM_ID from td.cycl_fold where cf_father_id =1358) union select CF_ITEM_ID from td.cycl_fold where cf_father_id =1358)GROUP BY (CF_ITEM_Name + ' : ' +CY_CYCLE), TC_STATUS ) foogroup by TestSetName Charlie===============================================================Msg 3903, Level 16, State 1, Line 1736The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION |
 |
|
|
sql2008vancouver
Starting Member
1 Post |
Posted - 2009-04-20 : 17:03:20
|
| Exactly Correct .Sherif AminDBAVancouver,BCTel:604-720-0217 |
 |
|
|
Venu@wfis
Starting Member
16 Posts |
Posted - 2009-04-21 : 05:13:57
|
| Thank you So much for the help Charlie. That worked well for me. Thank you :)Have a Good Day |
 |
|
|
|
|
|
|
|