繁体   English   中英

从两列中选择值并将它们串联到另一张表的一列中

[英]Selecting values from two columns and concatenating them into a column on a different table

我对SQL有点陌生,并尝试按照上面的描述进行操作。 这是我的查询:

SELECT
     CONCAT (first_name, last_name) INTO full_name_variable
FROM
    table_1
WHERE
    phone_number = new.number;

它似乎不起作用。 但是,当我使用AS使用此查询时,它可以工作。 像这样:

SELECT
      CONCAT (first_name, last_name) AS full_name_variable
FROM
      table_1
WHERE
    phone_number = new.number;

我非常感谢您的帮助

改用显式join

SELECT CONCAT (first_name, last_name) INTO full_name_variable
FROM table_1 t1
INNER JOIN tabke_2 t1 
       ON t1.phone_number = t2.number;

或者您可以使用INSRET INTO语句

INSERT INTO full_name_variable (full_name)
SELECT CONCAT (first_name, last_name) 
FROM table_1 t1
INNER JOIN tabke_2 t1 
      ON t1.phone_number = t2.number;

您需要了解变量之间的区别。

INTO将值加载到变量中,该变量在您使用的编程块中可用。 是相同的:= 因此,您的第一个版本与:

SELECT full_name_variable := CONCAT(first_name, last_name)
FROM table_1
WHERE phone_number = new.number;

AS (实际上是可选的),在结果集中命名一列。

您的代码似乎是在触发器中,通常不会返回结果集。 我的猜测是您想要INTO:= 我更喜欢:=因为我发现它对设置变量更直观。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM