[英]Mysql procedure insert into temporary table
I have written a mysql procedure. 我写了一个mysql程序。 I want into a temporary table using different select statement.
我想使用不同的select语句进入临时表。 While creating procedure its showing syntax error near at '
创建程序时,其在'附近的显示语法错误
SELECT
value as last
FROM
wp_13_rg_lead
LEFT JOIN wp_13_rg_' at line 18
Below is my procedure 下面是我的程序
DELIMITER $$
CREATE PROCEDURE TEMP_JOIN_WORK ()
BEGIN
start transaction;
CREATE TEMPORARY TABLE IF NOT EXISTS TEMP_JOIN(firstname varchar(500) not null,lastname varchar(500) not null) ;
insert into TEMP_JOIN(SELECT
value
FROM
wp_13_rg_lead
LEFT JOIN wp_13_rg_lead_detail on wp_13_rg_lead.id = wp_13_rg_lead_detail.lead_id
WHERE
wp_13_rg_lead.form_id = 9
AND CAST(wp_13_rg_lead_detail.field_number AS DECIMAL) = CAST(1.3 AS DECIMAL) ,
SELECT
value as lastname
FROM
wp_13_rg_lead
LEFT JOIN wp_13_rg_lead_detail on wp_13_rg_lead.id = wp_13_rg_lead_detail.lead_id
WHERE
wp_13_rg_lead.form_id = 9
AND CAST(wp_13_rg_lead_detail.field_number AS DECIMAL) = CAST(1.6 AS DECIMAL)
);
SELECT * FROM TEMP_JOIN;
commit;
END
$$
DELIMITER;
This should not give syntax error. 这不应引起语法错误。 In workbench, click on create stored procedure and copy the following between BEGIN END.
在工作台中,单击创建存储过程,然后在BEGIN END之间复制以下内容。 Logic will work or not, that is a separate issue.
逻辑是否有效,这是一个单独的问题。
CREATE TEMPORARY TABLE IF NOT EXISTS TEMP_JOIN(firstname VARCHAR(500) NOT NULL,lastname VARCHAR(500) NOT NULL) ;
INSERT INTO TEMP_JOIN VALUES((SELECT
`value`
FROM
wp_13_rg_lead
LEFT JOIN wp_13_rg_lead_detail ON wp_13_rg_lead.id = wp_13_rg_lead_detail.lead_id
WHERE
wp_13_rg_lead.form_id = 9
AND CAST(wp_13_rg_lead_detail.field_number AS DECIMAL) = CAST(1.3 AS DECIMAL)) , (
SELECT
`value` AS lastname
FROM
wp_13_rg_lead
LEFT JOIN wp_13_rg_lead_detail ON wp_13_rg_lead.id = wp_13_rg_lead_detail.lead_id
WHERE
wp_13_rg_lead.form_id = 9
AND CAST(wp_13_rg_lead_detail.field_number AS DECIMAL) = CAST(1.6 AS DECIMAL))
);
SELECT * FROM TEMP_JOIN;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.