SQL查询怎样将负数查询结果显示为0?

SQL查询怎样将负数查询结果显示为0?,第1张

select NVL(lotcode,0) from Plt_ProductionWorkOrder where lotcode in(select *from v11)

数据库本身有很多函数的,你可以去看看。

还有NVL2(lotcode,lotcode,0)

NVL2函数检查第一个表达式,如果第一个表达式不为空,那么NVL2函数返回。

第二个表达式;如果第一个表达式为空,那么第三个表达式被返回。

语句结构

结构化查询语言包含6个部分:

一:数据查询语言(DQL:Data Query Language):

语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。

二:数据 *** 作语言(DML:Data Manipulation Language):

其语句包括动词INSERT,UPDATE和DELETE。它们分别用于添加,修改和删除表中的行。也称为动作查询语言。

三:事务处理语言(TPL):

它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。

四:数据控制语言(DCL):

它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。

五:数据定义语言(DDL):

其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。

六:指针控制语言(CCL):

它的语句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的 *** 作。

SELECT

a.update_date,

a.user_id,

a.news_id,

(CASE WHEN b.counter IS NULL THEN 0 ELSE b.counter END) as 'Counter'

FROM (

SELECT update_date, user_id, news_id

FROM t_comment

GROUP BY update_date, user_id, news_id) a

LEFT OUTER JOIN

(

SELECT update_date, user_id, news_id,

count(*) AS counter FROM t_comment

WHERE user_id = 2 AND news_id = 15

GROUP BY user_id, news_id

) b

ON a.update_date = b.update_date

AND a.user_id = b.user_id

AND a.news_id = b.news_id

GO

T-SQL实现,原理如上,未经测试。祝你好运。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/7238177.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-03
下一篇2023-04-03

发表评论

登录后才能评论

评论列表(0条)

    保存