This is my table:
CREATE TABLE [dbo].[InfoTable]
(
[Id] INT IDENTITY (1, 1) NOT NULL,
[TimeSpanColumn] NVARCHAR(50) NULL,
[TimeStampColumn] DATETIME NULL,
[TimeStringColumn] NVARCHAR(50) NULL,
[TotalSecColumn] NVARCHAR(50) NULL,
PRIMARY KEY CLUSTERED ([Id] ASC)
)
I want to select timespans
between 2 given dates and substring them to another table like this:
Col1 Col2 col3
[hh] | [mm] | [ss]
----------------------
02 55 36
54 32 41
My stored procedure:
CREATE PROCEDURE sumBetweenDates
@QueryFromDate DateTime,
@QueryToDate DateTime
AS
SELECT
SUM(CONVERT(INT, SUBSTRING(TimeStringColumn, 1, 2))) as hh
FROM
InfoTable
WHERE
TimeStampColumn BETWEEN @QueryFromDate AND @QueryToDate
GROUP BY
TimeStampColumn
SELECT
SUM(CONVERT(INT, SUBSTRING(TimeStringColumn, 3, 2))) AS mm
FROM
InfoTable
WHERE
TimeStampColumn BETWEEN @QueryFromDate AND @QueryToDate
GROUP BY
TimeStampColumn
SELECT
SUM(CONVERT(INT, SUBSTRING(TimeStringColumn, 5, 2))) AS ss
FROM
InfoTable
WHERE
TimeStampColumn BETWEEN @QueryFromDate AND @QueryToDate
GROUP BY
TimeStampColumn
It only returns the result of first query. For example:
[hh]
02
54
How can I manage to do what I said?
I can't assign a variable to those select statements cause they may have more than one value after that they are grouped by timestampcolumn