十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Private Sub Command1_Click()
创新互联建站长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为桓台企业提供专业的网站设计制作、做网站,桓台网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
If Text1.Text 0 Then Print "负数" Else If Text1.Text = 0 Then Print "0" Else: Print "正数"
End Sub
oracle的number类型带括号时如:NUMBER(P,S),只是用来指定所存储数据的精度等制约条件的,当所存储的数据超出你预先指定的精度的时候,Oracle会给你返回一个错误。反过来说,但你不指定精度等制约条件的是时候,也就是你默认使用Oracle自身所设定的最大精度等制约条件,当然是可以用来存储负数或小数的。如下,Oracle官方文档上是这样描述的。(描述中的precision 就是上文中的P,scale就是上文中的S)
Specify a floating-point number using the following form:
NUMBER
The absence of precision and scale designators specifies the maximum range and
precision for an Oracle number.
在Oracle中Number类型可以用来存储0,正负定点或者浮点数,可表示的数据范围在
1.0 * 10(-130) —— 9.9...9 * 10(125) {38个9后边带88个0}
的数字,当Oracle中的数学表达式的值=1.0*10(126)时,Oracle就会报错。
Number的数据声明如下:
表示 作用 说明
Number(p, s) 声明一个定点数 p(precision)为精度,s(scale)表示小数点右边的数字个数,精度最大值为38,scale的取值范围为-84到127
Number(p) 声明一个整数 相当于Number(p, 0)
Number 声明一个浮点数 其精度为38,要注意的是scale的值没有应用,也就是说scale的指不能简单的理解为0,或者其他的数。
定点数的精度(p)和刻度(s)遵循以下规则:
当一个数的整数部分的长度 p-s 时,Oracle就会报错
当一个数的小数部分的长度 s 时,Oracle就会舍入。
当s(scale)为负数时,Oracle就对小数点左边的s个数字进行舍入。
当s p 时, p表示小数点后第s位向左最多可以有多少位数字,如果大于p则Oracle报错,小数点后s位向右的数字被舍入
也不用创建啊,有个函数叫sign
用法:
select sign(数值) from dual
大于0返回1,等于0返回0,小于0返回-1
你说的那个
select * from count where sign(num1)=1
得出来的就是为正数的了
---补充--
create or replace FUNCTION NUM(v_num number)
return int is
Result int;
begin
if(v_num 0) then
Result := -1;
end if;
if(v_num = 0) then
Result := 0;
end if;
if(v_num 0) then
Result := 1;
end if;
return(Result);
end num;
用法与sign一致
如select num(100) from dual;
select * from A where to_char(日期字段,'yyyymm')=to_char(add_months(sysdate,-1),'yyyymm')
这样试验一下,表名和字段名你替换一下,也就是把A和日期字段这俩地方换一下
if val(inputbox()) 0 then msgbox "正数"else msgbox "负数"end ifif val(inputbox()) mod 2= 0 then msgbox "双数"else msgbox "单数"end ifif int(val(inputbox()) = val(inputbox() then msgbox "整数"else msgbox "小数"end if