butcherking31 2016-06-02 03:41 采纳率: 0%
浏览 3372
已结题

让编号每天都从1开始生成

编号是某张表上的我新建的字段,通过一个function获取,这个function已经可以让这个字段每次+1,但是怎么能让这个编号每天都重新从1开始,下面是获取编号的function
SQL code
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

CREATE OR REPLACE FUNCTION Fn_GETBH
(
var_orgcode varchar2,
--var_deptID varchar2,

var_DEID varchar2

)
RETURN integer
IS

int_bh integer ;
tablename varchar2(100);
BEGIN
if var_DEID='test' THEN
select max(bh)as bh into int_bh from test t where t.orgcode=var_orgcode and TRUNC(SYSDATE,'YEAR')=TRUNC(T.CREATEDATE,'YEAR');

   end if;
 if int_bh is null  THEN
     int_bh:=0;
   end if;
   int_bh:=int_bh+1;

return int_bh;

End Fn_GETBH;

  • 写回答

4条回答

  • mazi2004 2016-06-02 05:40
    关注

    需要一个表字段保存当天日期yyyyMMdd,每次取之前先获取当天日期yyyyMMdd并和保存日期比较,如果不相同则需要做两件事:1.保存该日期 2.将int_bh赋值为0

    评论

报告相同问题?

悬赏问题

  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法
  • ¥15 可否在不同线程中调用封装数据库操作的类
  • ¥15 微带串馈天线阵列每个阵元宽度计算
  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM