在Oracle中自动编号

时间:2014-09-19 03:00:26

标签: php sql oracle

我对oracle中的自动编号有疑问,

所以我有一个像这样的序列,

CREATE SEQUENCE WELTESADMIN.NUMBERING
START WITH 0
MAXVALUE 999999999999
MINVALUE 1
NOCYCLE NOCACHE NOORDER

和我的oracle SQL是,

$allDrawingSql = "SELECT MASTER_DRAWING_ASSIGNED.*, NUMBERING.NEXTVAL AUTONUMBERING FROM MASTER_DRAWING_ASSIGNED 
                  WHERE SUBCONT_ID = :SUBCONTID AND PROJECT_NAME = :PROJNAME";

和我展示桌子的方式是这样的,

while (($row = oci_fetch_array($allDrawingparse, OCI_BOTH)) != false){
                 echo '<tr>';
                       echo '<td>'.$row['AUTONUMBERING'].'</td>';
                       echo '<td>'.$row['HEAD_MARK'].'</td>';
                 echo '</tr>';}

我的问题是每次变量:SUBCONTID和:PROJNAME都会改变,我的编号不会从1开始,而是我继续看到START WITH与序列脚本变量的变化。 我的意图是每次我查询一个表,编号从1开始 请帮帮我。

1 个答案:

答案 0 :(得分:1)

根据需要,只需选择rownum伪列而不是使用序列。