Hi all,I have a table CHSUTemp as shown below. I dont have any primary key field or index.CREATE TABLE [dbo].[CHSUTemp] ( [TxnDate] [datetime] NULL , [JobNumber] [varchar] (10) NULL , [ClientID] [varchar] (8) NULL , [StockCode] [varchar] (10) NULL , [StockName] [varchar] (150) NULL , [StockType] [varchar] (4) NULL , [StockCategory] [int] NULL , [StockTypeDesc] [varchar] (30) NULL , [Quantity] [int] NULL , [JobType] [varchar] (1) NULL ) ON [PRIMARY]
Here are queries that i will be runningSELECT CH.ClientID,CH.TxnDate,Sum(CH.Quantity) as QtyFROM CHSUTemp CH INNER JOIN JobList JL ON JL.JobNumber=CH.JobNumber INNER JOIN StockTypeList STL ON STL.StockType=CH.StockType INNER JOIN ClientIDList CL ON CL.ClientID=CH.ClientID INNER JOIN StockCategory SC ON SC.StockCategory=CH.StockCategory INNER JOIN JobType JT ON JT.JobType= CH.JobTypeWHERE CH.StockCode LIKE ISNULL(@StockCode,'%') AND CH.TxnDate>=@SDate AND CH.TxnDate<@EDate Group BY CH.ClientID,CH.TxnDateORDER BY CH.ClientID,CH.TxnDateSELECT CH.TxnDate,Sum(CH.Quantity) as QtyFROM CHSUTemp CH INNER JOIN JobList JL ON JL.JobNumber=CH.JobNumber INNER JOIN StockTypeList STL ON STL.StockType=CH.StockType INNER JOIN ClientIDList CL ON CL.ClientID=CH.ClientID INNER JOIN StockCategory SC ON SC.StockCategory=CH.StockCategory INNER JOIN JobType JT ON JT.JobType= CH.JobTypeWHERE CH.StockCode LIKE ISNULL(@StockCode,'%') AND CH.TxnDate>=@SDate AND CH.TxnDate<@EDate Group BY CH.TxnDateORDER BY CH.TxnDateSELECT CH.ClientID,CH.StockTypeDesc,CH.TxnDate,Sum(Quantity) as QtyFROM CHSUTemp CH INNER JOIN JobList JL ON JL.JobNumber=CH.JobNumber INNER JOIN StockTypeList STL ON STL.StockType=CH.StockType INNER JOIN ClientIDList CL ON CL.ClientID=CH.ClientID INNER JOIN StockCategory SC ON SC.StockCategory=CH.StockCategory INNER JOIN JobType JT ON JT.JobType= CH.JobTypeWHERE CH.StockCode LIKE ISNULL(@StockCode,'%') AND CH.TxnDate>=@SDate AND CH.TxnDate<@EDate Group BY CH.ClientID,CH.StockTypeDesc,CH.TxnDateORDER BY CH.ClientID,CH.StockTypeDesc,CH.TxnDateSELECT CH.ClientID,CH.StockTypeDesc,CH.StockCode,CH.TxnDate,Sum(CH.Quantity) as QtyFROM CHSUTemp CH INNER JOIN JobList JL ON JL.JobNumber=CH.JobNumber INNER JOIN StockTypeList STL ON STL.StockType=CH.StockType INNER JOIN ClientIDList CL ON CL.ClientID=CH.ClientID INNER JOIN StockCategory SC ON SC.StockCategory=CH.StockCategory INNER JOIN JobType JT ON JT.JobType= CH.JobTypeWHERE CH.StockCode LIKE ISNULL(@StockCode,'%') AND CH.TxnDate>=@SDate AND CH.TxnDate<@EDate Group BY CH.ClientID,CH.StockTypeDesc,CH.StockCode,CH.TxnDateORDER BY CH.ClientID,CH.StockTypeDesc,CH.StockCode,CH.TxnDate
Please tell what i should do to increase speed for these queries.I mean if i add primary key. will it improve performance while running queries even it is not used anywhere.Or what indexes i should create on CHSUTemp table so that it will reduce respose time for all the quries.CHSUTemp has approx. 100000 records.Thanksmk_garg