Mysql SQL插入值列,其中值来自另一列

Mysql SQL插入值列,其中值来自另一列,mysql,sql,Mysql,Sql,我在MySQL中有这样一个表,我想在kodeunik列中添加值,其中的值是Kode、Daerah和NomorKode kodeunik列的预期输出: Bank BCA 101 00 0003 101000003 Bank BCA PT 101 00 0003 101000001 Bank BNI 101 00 0003 101000004 问题: 怎么能这样提问呢 是否可以将kodeunik作为主键 您可以使用Upda

我在MySQL中有这样一个表,我想在
kodeunik
列中添加值,其中的值是
Kode
Daerah
NomorKode

kodeunik
列的预期输出:

Bank BCA       101    00   0003   101000003

Bank BCA PT    101    00   0003   101000001

Bank BNI       101    00   0003   101000004
问题:

  • 怎么能这样提问呢

  • 是否可以将
    kodeunik
    作为主键

  • 您可以使用
    Update
    query来实现它
  • 如果确保
    kodeunik
    值是唯一的,也可以将其作为主键
  • Mysql具有
    CONCAT()
    函数。在您的情况下,您可以尝试:

    select CONCAT(Kode, Daerah, NomorKode) from <your_table_name>;
    
    从中选择CONCAT(Kode、Daerah、NomorKode);
    

    如果它是您想要的,您可以使用子查询来更新它们。

    不需要这样做;您只需动态生成值:

    SELECT *, CONCAT(Kode, Daerah, NomorKode) AS kodeunik
    FROM yourTable
    
    或创建一个
    视图

    CREATE VIEW yT_ke AS
        SELECT *, CONCAT(Kode, Daerah, NomorKode) AS kodeunik
        FROM yourTable;
    SELECT * FROM yT_ke
    
    输出(对于两个查询):

    如果要在该组合字段上添加主键,只需将其添加到3列上:

     ALTER TABLE yourTable ADD PRIMARY KEY (Kode, Daerah, NomorKode)
    

    这是否回答了您的问题?如果您需要任何帮助@ryanderonif I make+,请告诉我,它将对所有值求和,因为它的编号是我尝试使用的concat@Anonymous别忘了提醒OP投票/接受他们认为有用的任何答案OP想要**向
    kodeunik
    列中添加值,其中值是
    Kode
    Daerah
    ,的组合,
    NomorKode
    **而不是按照您的建议选择,先生,“无名氏很少有任何一点可以存储的数据可以随时生成。OP是否想对他的数据进行大量的更新?”Ryordon请看看这个答案,并考虑如果它解决了你的问题就接受它。
    Kode、Daerah、NomorKode
    ,可能存在重复。你确定没有。。或者不会有重复?这些答案中有一个解决了你的问题吗?如果没有,你能提供更多的信息来帮助回答这个问题吗?否则,请考虑将最能解决你的问题的答案标记为(在上/下投票箭头下的复选标记)。看见
    JenisPerkiraan  Kode    Daerah  NomorKode   kodeunik
    Bank BCA        101     00      0003        101000003
    Bank BCA PT     101     00      0001        101000001
    Bank BNI        101     00      0004        101000004
    
     ALTER TABLE yourTable ADD PRIMARY KEY (Kode, Daerah, NomorKode)