簡體   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