在MySQL中创建复合字段



我需要将'full_name'作为'first_name''的复合列'和mysql中的'last_name'。我可以使用以下语法在MS SQL中进行同样的操作:

create table customer
(
    first_name varchar(100)
  , last_name  varchar(100)
  , full_name AS first_name + last_name
)

我该如何在mysql中做同样的事情。有任何建议吗?

mySQL 5.7.5 支持计算/生成的列(这是对主题的介绍(。因此,您可以这样做:

create table customer (
    first_name varchar(100),
    last_name  varchar(100),
    full_name varchar(200) AS (concat_ws(' ', first_name, last_name))
);

注意:首先,我假设您想要名称之间的空间。其次,字符串串联在mysql中不使用 +

在MySQL的早期版本中,您需要为此使用视图。

您可以尝试更新记录,一旦将记录插入表格:

UPDATE customer SET fullname=CONCAT(first_name,last_name)

最新更新