あなたの言っていることが理解できれば、 Col1
文字列「SUP」が含まれている場合、最終的な XML にこのタグが必要です:
<ss:Data ss:Type="String">SomethingContainingSup</ss:Data>
それ以外の場合は、次の式が必要です:
<Data ss:Type="String">SomethingElse</Data>
この SQL フラグメントでそれを取得できると思います:
SELECT CASE WHEN COL1 LIKE '%SUP%' THEN 'String' END as [Cell/ss:Data/@ss:Type],
CASE WHEN Col1 Like '%SUP%' THEN Col1 END as [Cell/ss:Data],
CASE WHEN COL1 NOT LIKE '%SUP%' THEN 'String' END as [Cell/Data/@ss:Type],
CASE WHEN Col1 NOT Like '%SUP%' THEN Col1 END as [Cell/Data],
''
うまくいかなかった理由:列 (または XML 要素) の名前を条件付きにすることはできません。最も近い方法は、いずれかの式を null と評価することです。この場合、最終的な XML でレンダリングされません。