次の関数を動作させる方法を教えてください。私はうまく動作するが、必要な構文でそれを変更することによって、北風の例を見つけました。すべての行が選択されると、 'effec'の近くで条件が予想されるコンテキストで指定された非ブール型の式を記述するエラーが発生します。私は改正が必要な文は以下の通りです:exec sp_executesql文でエラーが発生しました "条件が想定されるコンテキストで指定された非ブール型の式"
select max(person_sid) from dim_person
where [Effective_To] <='2015-10-01'
group by person_id_number
declare @sql nvarchar(50), @dt datetime;
set @dt = '2015-10-01';
set @sql = N'SELECT max(person_sid) FROM dim_person WHERE effective_to <= @date';
exec sp_executesql @sql, N'@date datetime',@dt;
もちろん、最後の行を選択するだけで、 '@sqlは宣言する必要があります 'と言います - それは上の数行で宣言されています。最初の 'select ....'を3行だけ選ぶとどうなりますか?それは大丈夫ですか? – Jamiec
こんにちは、ええ、すべてうまく動作します、私はデータを持つ出力された列を取得します、それは他のすべてで動作するように思わない最後の幹部だけです。 – Ryan
動的SQL文字列に沿って50文字をカウントします。 45-50番目のcharが 'effec'を参照してください – Jamiec