【问题标题】:How to create a correct sequence for a bill?如何为账单创建正确的顺序?
【发布时间】:2018-01-05 05:17:08
【问题描述】:

我正在为一家药店开发一个 Web 应用程序。 此应用程序需要为客户生成账单。所以我的问题是:

我怎样才能正确地完成我的数据库(PostgreSQL 9.5)? 我不能使用增量,因为我不能丢失任何寄存器。 例如:A001 - A002 - A003 ... 因此,如果我在任何时候使用增量,我都可能会丢失序列并且这不会发生。

我能做些什么来解决这个问题?

感谢您的帮助。

(对不起,我正在学习英语语法)

【问题讨论】:

    标签: database postgresql web-applications


    【解决方案1】:

    您可以使用以下方法按给定顺序递增值。

    SELECT 'A'||lpad((regexp_replace('A001', '\D','','g')::numeric+1)::text,3,'0') AS result 
    

    所以如果值为A001,上面将给出A002。代替“A001”,您可以放置​​具有序列的列名。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-24
      相关资源
      最近更新 更多