gpt4 book ai didi

SQL:具有不同类型参数的 ISNULL 函数

转载 作者:搜寻专家 更新时间:2023-10-30 21:38:40 25 4
gpt4 key购买 nike

在 SQL Server 中,ISNULL()函数必须具有相同类型的参数。

check_expression

Is the expression to be checked for NULL. check_expression can be of any type.

replacement_value

Is the expression to be returned if check_expression is NULL. replacement_value must have the same type as check_expresssion.

如何将它与不同类型的参数一起使用?我想像这样使用 datestring 参数 ISNULL(A.DATE, '-')

注意:A.DATE 的类型是datetime

EDIT-1:我的完整查询得到 0 行:

    SELECT A.pkey as KREDİ, A.SUMMARY , D.BayiStatu AS STATU, D.Sorumlu AS SORUMLU, C.BayiSonuc as SONUC, ISNULL( CONVERT(VARCHAR(25), A.CREATED, 112) , '-' ), ISNULL( CONVERT(VARCHAR(25), A.RESOLUTIONDATE, 112) , '-' ), dbo.CUSTVAL(11931, A.ID, 'S') AS BAYİ, ISNULL( CONVERT(VARCHAR(25), dbo.GetLastStatuTime(A.ID), 112) , '-' ) AS SON_STATU_TAR,j2.SUMMARY, ISNULL( CONVERT(VARCHAR(25), j2.CREATED, 112) , '-' ), ISNULL( CONVERT(VARCHAR(25), j2.RESOLUTIONDATE, 112) , '-' ), j3.SUMMARY, ISNULL( CONVERT(VARCHAR(25), j3.CREATED, 112) , '-' ), ISNULL( CONVERT(VARCHAR(25), j3.RESOLUTIONDATE, 112) , '-' )
FROM AspNetServicesDB.dbo.SONUC_MAP C, JİRA.resolution E, jira.issuestatus B, AspNetServicesDB.dbo.STATU_MAP D, Jira.jiraissue A
INNER JOIN Jira.issuelink i
ON i.SOURCE = A.ID and i.SEQUENCE = 0
INNER JOIN Jira.jiraissue As j2
ON i.DESTINATION =j2.ID
LEFT JOIN Jira.issuelink i2
ON i2.SOURCE = A.ID and i2.SEQUENCE = 1
LEFT JOIN Jira.jiraissue As j3
ON i2.DESTINATION = j3.ID
WHERE A.issuestatus = B.ID
AND 'BAŞARAN OTOMATİV' = dbo.CUSTVAL(11931, A.ID, 'S')
AND B.pname = D.JiraStatu collate Turkish_CS_AI
AND A.issuetype != 11
AND A.RESOLUTION = E.ID
AND E.pname = C.JiraSonuc collate Turkish_CS_AI

EDIT-2:但这有效

select ISNULL( CONVERT(VARCHAR(25), A.RESOLUTIONDATE, 112) , '-' )
FROM Jira.jiraissue A

可能是 JOIN 的原因吗?

最佳答案

你不能。 ISNULL 函数本身用作查询结果列,或在最终成为查询结果中的列的表达式中使用。列中的所有字段/行必须具有相同的数据类型。所以你必须做出选择。

一个解决方案是将 DATE 转换为字符串,因此结果始终是一个字符串,但我觉得最好的解决方案是为空日期返回 NULL 并让表示层决定是否NULL 日期是否应显示为 - 以及非空日期应以何种格式显示(客户端区域设置)。

对于表示层,我指的是显示或输出此数据的任何东西,它可以是网页、CSV 导出器、报告工具,等等。

关于SQL:具有不同类型参数的 ISNULL 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7963652/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com