0

我正在使用 LibreOffice 基础,因为我需要在 Windows 和 OSX 中使用相同的数据库。

我有一个表,其中有数百个CLIENT_ID作为主键,CLIENT_NAME作为字段。主键的长度为 6 个字符:

CLxxxx

我希望能够插入一个新客户端并使用单个 SQL 语句来完成它,而不是 VBA 或 PHP。就像使用自动编号一样。

我想要做的是:

1)获取最高的密钥,从中删除“CL”。例如对于 CL0344 我需要 0344

2) 将最高密钥加 1 以获得新客户端的新密钥:0355

3)在表中插入新的CLIENT

第一点很容易使用:

SELECT TOP 1 RIGHT(CLIENT_ID,4) AS LAST_RECORD FROM CLIENTS
ORDER BY CLIENT_ID DESC

但是如何将 1 添加到此选择的结果并使用相同的语句进行插入?

4

1 回答 1

0

您可以使用此查询:-

 SELECT CAST(RIGHT(MAX(CLIENT_ID),4) AS INTEGER) + 1
 FROM CLIENTS;
于 2015-01-16T11:08:52.777 回答