【问题标题】:How do I left pad a database column in FrontBase?如何在 FrontBase 中填充数据库列?
【发布时间】:2011-12-28 07:44:58
【问题描述】:

我有一个项目表(我们称之为 WIDGET),每个项目都有自己的八位条形码编号存储在 VARCHAR 字段中(我们称之为 BARCODE;表的主键位于单独的整数列中ID)。我的问题是某些行包含前导零,而其他行不包含。为了保持一致性,我想将所有现有记录(总共数百条)更新为八位数字

  • 100000001
  • 23400000234
  • 567800005678
  • 0000901200009012

我知道 FrontBase 符合 SQL-92,但 SQL-92 没有专门用于左填充字符串的功能。我已经想出了一个解决方案,但我发布这个问题是为了看看是否有人能想到比我更好的方法。

【问题讨论】:

    标签: sql frontbase


    【解决方案1】:

    这似乎可行(至少在 FrontBase 5.2.9 中):

    UPDATE WIDGET SET BARCODE =
    SUBSTRING('00000000' || BARCODE FROM CHAR_LENGTH(BARCODE) + 1);
    

    【讨论】:

      猜你喜欢
      • 2021-04-27
      • 2015-05-05
      • 2015-10-09
      • 1970-01-01
      • 2019-01-17
      • 1970-01-01
      • 2015-01-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多