I like to join a temporary table in MySQL which fails, the idea quite simple:
CREATE TEMPORARY TABLE temp_table LIKE any_other_table; -- srsly it does not matter which table
(
SELECT p1,p2,p3 FROM temp_table WHERE p4 = 1
) UNION (
SELECT p1,p2,p3 FROM temp_table WHERE p4 = 2
)
Any help is greatly appreciated.
EDIT: The error thrown by mysql is ERROR 1137 (HY000): Can't reopen table: 'temp_table'
You cannot refer to a TEMPORARY table more than once in the same query.
Please read the following link http://dev.mysql.com/doc/refman/5.5/en/temporary-table-problems.html
This should work. Just make sure your new table has a different name then the existing one.
CREATE TEMPORARY TABLE new_table
SELECT p1,p2,p3 FROM existing_table WHERE p4 = 1
UNION
SELECT p1,p2,p3 FROM existing_table WHERE p4 = 2
;
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With