我有一个运行类似这样的存储过程:
SELECT
ColorId,
ColorName,
CASE
WHEN ColorId > 5 THEN 1
ELSE 0 END AS IsNewColor
FROM
Colors
WHERE
ColorId = 5
当我导入函数并创建复杂类型时,它认为IsNewColor是一个int。
我试过回复' True'或者“假”'但后来它认为它是一个字符串。
我可以将复杂类型更改为bool,但是可以以不同的方式编写sql或者其他可以使#c;创建新的复杂类型"意识到它应该是一个布尔?
答案 0 :(得分:2)
在演员表中包裹您的CASE
语句,将其设置为BIT
类型
CAST(
CASE
WHEN ColorId > 5 THEN 1
ELSE 0 END
AS BIT) AS IsNewColor