1
簡而言之,加入,如果臨時表存在
我如何創建我的臨時表
CREATE TEMPORARY TABLE _tmp_table SELECT * FROM db1;
然後,
# if tmp_table does exist
SELECT db2.*, _tmp_table.* FROM 'db2' LEFT OUTER JOIN _tmp_table ON _tmp_table.key = db2.id;
# if tmp_table does NOT exist
SELECT db2.* FROM db2;
我怎樣才能讓只有一個查詢對付我的臨時表中的現有或不?
Env:Mysql 5.5.15
。
爲什麼不每次都創建臨時表。如果你沒有放入任何東西,左連接仍然會返回'db2。*'的所有行。 – Barmar 2013-04-04 06:29:21
@Barmar會不會對性能造成不良影響? – oldergod 2013-04-04 06:43:41
我不這麼認爲 - 它不應該花費太多精力來告訴它它正在與一張空桌子結合。 – Barmar 2013-04-04 06:45:34