#sql-server
#sql-server
Вопрос:
мои данные:-
UserId |ShopId |PlanName
------------------------
241 | 17679 |NULL
241 | 20037 |NULL
241 | 20037 |440
данные, которые мне нужны :-
UserId |ShopId |PlanName
------------------------
241 | 17679 |NULL
241 | 20037 |440
это мой запрос
select distinct so.UserId,so.ShopId, (select sa1.beatplanid from beatplansetting bps1
inner join shopassign sa1 on bps1.beatplanid = sa1.beatplanid
where
so.shopid = bps1.shopid
and
sa.userid = sa1.userid
) as PlanName from
shopinandoutlog so
left join beatplansetting bps on so.shopid = bps.shopid
left join shopassign sa on so.userid = sa.userid and bps.beatplanid = sa.beatplanid
where so.userid=241
and
convert(varchar,mobiletransactiondate,106)='01 oct 2016'
and
so.shopid in (20037,17679)
Ответ №1:
Я думаю, это делает то, что вы хотите:
select UserId, ShopId, MAX(PlanName) as PlanName
from t
group by UserId, ShopId;
Я не знаю, какое отношение ваш запрос имеет к фактическому вопросу. В вашем запросе есть несколько таблиц и столбцов, не упомянутых в запросе или образце данных.