0

我试图让 mysql 自己完成这项工作,我正在使用 Navicat Enterprise,我的新问题是如果我想在每次执行命令时创建一个特定的列来改变。例子:

    INSERT INTO RESULT ()
VALUES
    (
        '1-10218',
        'FIRST',
        '1-10220', /* I WANT THIS TO ACT AS A VARIABLE, SO IT CHANGES 1 AT A TIME [INCREMENTAL] */
        'SECOND'
    )

我可以使用类似的东西吗@NUM += 1???请注意,我没有将其编程为任何内容,因此安全性或最佳实践不符合我的兴趣,我只是希望它一次更改一个值。我想要的输出是这样的:

1-10218   FIRST   1-10220   SECOND
1-10218   FIRST   1-10221   SECOND
1-10218   FIRST   1-10222   SECOND
1-10218   FIRST   1-10223   SECOND
1-10218   FIRST   1-10224   SECOND
1-10218   FIRST   1-10225   SECOND
4

1 回答 1

0

如何做额外的价值观:

 SELECT  s.*, 
         @i:=@i+1 AS increnatal
 FROM table_source AS s,
        (SELECT @i:=0) AS inc

在您输入显示后,我可以提供确切的插入。

INSERT INTO RESULT (COLUMNS) 
SELECT  '1-10218', 'FIRST', CONCAT('1-', @i:=@i+1), 'SECOND'
FROM table_source AS s,
    (SELECT @i:=10219) AS inc
于 2013-09-04T11:02:07.133 回答