
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用于对一个或多个表单独行的 *** 作。
这些数据为什么会出现负数 ,你应该解决程序问题而不会对数据进行处理
具体的SQL 如下
UPDATE SPKCB SET SL = -1SL WHERE SL < 0
后台获取前台提交数据时,加个负号不就是负数了吗?然后再保存到数据库。比如
x = -request("x")
或者在保存到数据库时再转为负数:
sqlstr = "update table1 set x=" & -request("x") & " where id=" & request("id")
或 sqlstr = "update table1 set x=-" & request("x") & " where id=" & request("id")
这个问题用触发器解决比较好,用check
只能设定字段不为负数,但是要变为0就难了。
用check的话如下:
alter
table
表名
add
constraint
约束名
check
(字段>0)
用触发器的话
create
trigger
a_num
on
表名
instead
of
insert
as
begin
declare
@列1
数据类型1,@列2
数据类型2,列3
数据类型3
select
@列1
=
列1,@列2=列2,@列3
=
列3
from
inserted
if
@列1<0
set
@列1
=
0
else
set
@列1
=@列1
insert
into
表名(列1,列2,列3)
values
(@列1,@列2,@列3)
end
这里我假设你列是要大于等于0,小于0的时候自动变为0的
是excel数据表中的负值吧!
根本不需要用筛选,选中数据表中的所有数据,格式-单元格-数字-数值-负数(在这里选红色的负数显示格式后)确定退出即可,自然数据只是负数就是红字的
方法如下:
1、如图,G列为E列减F列的差值;
2、要求当差值为负值时,取0,否则取原数,首先想到的是条件公式:=IF(E19-F19<0,0,E19-F19);
3、变通一下,可以用:=(E19-F19>=0)(E19-F19),当差值为负时,前面的判断不成立,自然会按0计算,得到0,当差值非负时,判断成立,按1相乘,得到原差值;
4、也可以用MAX求最大值函数:=MAX(E19-F19,0),当差值为负数时,最大值会取0,当公式非负时,取差值,这是最合理的公式。
扩展资料
数据库和清单管理函数
AVERAGE 返回选定数据库项的平均值
COUNT 计算数据库中包含数字的单元格的个数
COUNTA计算数据库中非空单元格的个数
DGET 从数据库中提取满足指定条件的单个记录
MAX 返回选定数据库项中的最大值
MIN 返回选定数据库项中的最小值
PRODUCT 乘以特定字段(此字段中的记录为数据库中满足指定条件的记录)中的值
STDEV 根据数据库中选定项的示例估算标准偏差
STDEVP 根据数据库中选定项的样本总体计算标准偏差
SUM 对数据库中满足条件的记录的字段列中的数字求和
VAR 根据数据库中选定项的示例估算方差
VARP 根据数据库中选定项的样本总体计算方差
GETPIVOTDATA 返回存储在数据透视表中的数据
日期和时间函数
DATE 返回特定时间的系列数
DATEDIF 计算两个日期之间的年、月、日数
DATEVALUE 将文本格式的日期转换为系列数
DAY 将系列数转换为月份中的日
DAYS360 按每年360天计算两个日期之间的天数
EDATE 返回在开始日期之前或之后指定月数的某个日期的系列数
EOMONTH 返回指定月份数之前或之后某月的最后一天的系列数
HOUR 将系列数转换为小时
MINUTE 将系列数转换为分钟
MONTH 将系列数转换为月
NETWORKDAYS 返回两个日期之间的完整工作日数
NOW 返回当前日期和时间的系列数
SECOND 将系列数转换为秒
TIME 返回特定时间的系列数
TIMEVALUE 将文本格式的时间转换为系列数
TODAY 返回当天日期的系列数
WEEKDAY 将系列数转换为星期
WORKDAY 返回指定工作日数之前或之后某日期的系列数
YEAR 将系列数转换为年
YEARFRAC 返回代表START_DATE(开始日期)和END_DATE(结束日期)之间天数的以年为单位的分数
DDE 和外部函数
CALL 调用动态链接库(DLL)或代码源中的过程
REGISTER ID 返回已注册的指定DLL或代码源的注册ID
参考资料:
以上就是关于SQL查询怎样将负数查询结果显示为0全部的内容,包括:SQL查询怎样将负数查询结果显示为0、SQL数据库中如何将表中某一列部分负数改为正数、asp问题,请帮忙解答,怎样在文本框内输入数字时或者提交到数据库后,自动为负数。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)