Вы можете pivot
:
SELECT * FROM
(
SELECT
t_m.Id
, t_m.Period
, t_2.Parameter
, t_2.Value
FROM @tbl_Master t_m
INNER JOIN @tbl_2 t_2 ON t_2.Id = t_m.Id
)AS t
PIVOT
(
MAX(t.Value)
FOR t.Parameter IN ([Humidity], [Temperature])
)pvt
и данные образца:
DECLARE @tbl_Master TABLE
(
Id int,
Period Date,
QTY int
)
DECLARE @tbl_2 TABLE
(
Id int,
Parameter varchar(30),
[Value] int
)
INSERT INTO @tbl_Master
(
Id,
Period,
QTY
)
VALUES
(1, '2014-01-13', 10)
, (2, '2014-01-06', 30)
INSERT INTO @tbl_2
(
Id ,
Parameter ,
[Value]
)
VALUES
( 1, 'Humidity', 10)
, ( 1, 'Temperature' , 30)
, ( 2, 'Humidity', 50)
, ( 2, 'Temperature' , 40)
ВЫХОД:
Id Period Humidity Temperature
1 2014-01-13 10 30
2 2014-01-06 50 40