次のように、Varchar 変数にいくつかの論理ステートメントを記述しました。
declare @P1 as varchar(max)
set @P1 = ' (select (Convert(float,(SELECT COUNT(*) FROM AttendanceMaster AS innerAM WHERE
(AttendanceTypeId IN (SELECT TypeId FROM AttendanceTypeMaster AS innerATM WHERE
innerAM.ParshadId = '+@ParshadId+'
and (AttendanceSubjectId ='+Convert(varchar(5),@ASubjectId)+' ))) and innerAM.Attendance=''P1'''+ @innerWhereCondition +'))/6))'
次のように、Exec関数で@P1の上で実行しました
exec(@P1)
ここで、EXEC 関数で実行されている上記の @P1 ステートメントの結果を取得し、int 変数に格納したいと考えています。上記の 2 つのステートメントをユーザー定義関数に記述しましたが、上記の 2 つのステートメントから int を返したいと考えています。
これどうやってするの?このような結果を割り当てることは可能ですか?
Declare @result int
set @result = exec(@P1)
次のようなエラーがスローされます。incorrect syntext near Exec
SQL Server のユーザー定義関数で Exec 関数から結果を返すにはどうすればよいですか?
ありがとう。