基本的に、これを取ることが可能かどうか疑問に思います
IF @Value = 1
SELECT col1, col2 FROM MyTable
ELSE
SELECT col2 FROM MyTable
そして、それは単一のステートメントで行いますか?何かのようなもの
SELECT IF(@Value = 1 col1), col2 FROM MyTable
私はこれを試しました
SELECT case @Value when 1 then col1 end, col2 FROM MyTable
常に2列を返しますが、@ Valueが1でない場合、最初の列はnullになります。@ Valueが1の場合にのみ2列を返し、それ以外の場合は1列を返します。