最近の投稿で、Sql サーバーの rtrim が機能しない、提案はありますか? 、選択クエリからcsv文字列を取得するのに役立ちました。ただし、予期しない動作をしており、同様の例やドキュメントが見つかりません。クエリは、通常の選択として、合体ステートメントなしで 802 レコードを返します。テキストに出力したり、ファイルに出力したりしても、これと同じ結果が得られます。このクエリは 800 行以上を返します。
declare @maxDate date = (select MAX(TradeDate) from tblDailyPricingAndVol)
select p.Symbol, ','
from tblDailyPricingAndVol p
where p.Volume > 1000000 and p.Clse <= 40 and p.TradeDate = @maxDate
order by p.Symbol
しかし、これらの値を連結しようとすると、多くが欠落しています。
declare @maxDate date = (select MAX(TradeDate) from tblDailyPricingAndVol)
declare @str VARCHAR(MAX)
SELECT @str = COALESCE(@str+',' ,'') + LTRIM(RTRIM((p.Symbol)))
FROM tblDailyPricingAndVol p
WHERE p.Volume > 1000000 and p.Clse <= 40 and p.TradeDate = @maxDate
ORDER by p.Symbol
SELECT @str