当前位置: 首页 > 面试题库 >

通用选择不适用于位类型

微生恩
2023-03-14
问题内容

根据这个答案

我试图在我的桌子上创建一个Select for

ALTER PROCEDURE _Einrichtung_Select

    -- Parameters with default values
        @EinrichtungId      AS int          = NULL,
        @EinrichtungName    AS nvarchar(50) = NULL,
        @IsKueche           AS bit          = NULL,
        @RefEinrichtungId   AS int          = NULL,
        @RefSpeiseplantypId AS int          = NULL

AS

    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
        SET NOCOUNT ON;

    -- generic SELECT query
        SELECT  *
        FROM    Einrichtung
        WHERE   EinrichtungId       = ISNULL(@EinrichtungId,        EinrichtungId)
        AND     EinrichtungName     = ISNULL(@EinrichtungName,      EinrichtungName)
        AND     IsKueche            = ISNULL(@IsKueche,             IsKueche)
        AND     RefEinrichtungId    = ISNULL(@RefEinrichtungId,     RefEinrichtungId)
        AND     RefSpeiseplantypId  = ISNULL(@RefSpeiseplantypId,   RefSpeiseplantypId)

        ORDER BY EinrichtungName

    RETURN

但是我对位类型示例sqlfiddle遇到了问题,如您所见,它应该返回4行,但它仅返回3行,所以我想念什么?


问题答案:

这是因为您可以将nullas作为列的值。而且SQL具有三值逻辑,因此检查null = null将返回,UNKNOWN而不是TRUE(如您期望的那样)。我认为此查询将为您提供帮助:

select *
from myTable
where
    (@EinrichtungId is null or EinrichtungId = @EinrichtungId) and
    (@EinrichtungName is null or EinrichtungName = @EinrichtungName) and
    (@IsKueche is null or IsKueche = @IsKueche) and
    (@RefEinrichtungId is null or RefEinrichtungId = @RefEinrichtungId) and
    (@RefSpeiseplantypId is null or RefSpeiseplantypId = @RefSpeiseplantypId)

[sql fiddle demo](http://sqlfiddle.com/#!3/0cedb/25)



 类似资料:
  • 问题内容: 我找到了flask-jquery-ajax示例,其中用户从车辆“ Make”下拉菜单中选择一个项目,通过向AJAX请求选择的车型列表来填充车辆“ Model”下拉菜单。 我尝试用 bootstrap-select 替换下拉菜单,并且在第二个下拉菜单中添加 class =“ selectpicker form- control”后, 在选择了第一个下拉菜单后,不再填充任何内容。 这是HT

  • 问题内容: 这是我经历和解决的一系列跨浏览器差异的最后一个问题。 基本上,在Internet Explorer 8和Internet Explorer 9中,样式不会应用于菜单。按下时应变暗。请让我知道为什么以及如何解决。提前致谢。 问题答案: :active伪类在用户激活元素时适用。例如,在用户按下鼠标按钮并释放的时间之间。请参阅W3 但是,您正在将选择器应用于元素, 该 元素 不能处于活动状态

  • 我正在尝试将数据库中列表中的项作为行中的单个值插入。如何循环发送的有效负载并将所有项插入到单独的行中?我试着找例子,没有运气。我无法循环并插入数据库中的值。 这是有效载荷

  • 好吧,在这件事上乱搞了好几天,阅读了无数的帮助页面之后,是时候寻求帮助了。这段代码没有问题。我在表单中输入的任何文本都将显示在弹出框中。好的 如果我将HTML从表单更改为单选按钮或下拉选择器,则弹出框将始终仅显示列表中第一个单选或第一个下拉选项的值。例如,在下面的代码中,第一个单选选项为“是”,第二个单选选项为“否”。无论我选择“是”还是“否”,弹出框始终显示“是” 有没有人知道一种编码方法,这样

  • 问题内容: 是否有一种方法可以根据将class属性的值设置为两个特定的类来选择CSS元素。例如,假设我有3个div: 基于它是foo AND bar类的成员,我可以写什么CSS来选择列表中的第二个元素? 问题答案: 链接两个类选择器(之间没有空格): 如果仍然需要处理IE6之类的古老浏览器,请注意,它无法正确读取链接的类选择器:无论您列出什么其他类,它都只会读取 最后一个 类选择器(在这种情况下)

  • 问题内容: 我试图弄清楚如何为通用类(在Swift中)实现类型约束,它将通用类型限制为仅数字类型。例如Double,Int等,但不是字符串。谢谢你的帮助。 问题答案: 您可以使用尖括号为通用类(对函数使用相同的语法)指定类型约束(使用类和协议): 要在单个类型上指定多个需求,请使用子句: 但是,您似乎无法在泛型参数子句中指定可选要求,因此一种可行的解决方案是创建一个协议,使所有数字类型都通过扩展来