Myadmin Union错误1064

时间:2014-05-07 23:42:42

标签: sql union union-all

我正在处理查询,它正在处理实时页面,但是当我从Myadmin尝试使用SQL时,我收到了1064错误。

(
(SELECT bk_boekingen_kenmerk, bk_boekingen_naam, bk_boekingen_soort, bk_boekingen_datum, bk_locatie_naam 
FROM bk_boekingen_versie1 bk1 
JOIN bk_locatie loc ON bk1.bk_boekingen_locatie_id=loc.bk_locatie_id 
WHERE bk1.bk_boekingen_datum>='1399500000' 
AND bk1.bk_boekingen_status != '20' ) 
UNION 
(SELECT bk_boekingen_kenmerk, bk_boekingen_naam, bk_boekingen_soort, bk_boekingen_datum, bk_locatie_naam 
FROM bk_boekingen_versie2 bk2 
JOIN bk_locatie loc ON bk2.bk_boekingen_locatie_id=loc.bk_locatie_id 
WHERE bk2.bk_boekingen_datum>='1399500000' 
AND bk2.bk_boekingen_status != '20' ) 
UNION 
(SELECT bk_boekingen_kenmerk, bk_boekingen_naam, bk_boekingen_soort, bk_boekingen_datum, bk_locatie_naam 
FROM bk_boekingen_versie3 bk3 
JOIN bk_locatie loc ON bk3.bk_boekingen_locatie_id=loc.bk_locatie_id 
WHERE bk3.bk_boekingen_datum>='1399500000' 
AND bk3.bk_boekingen_status != '20' ) 
ORDER BY bk_boekingen_datum ASC
)

错误代码

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNION (SELECT bk_boekingen_kenmerk, bk_boekingen_naam, bk_boekingen_soort, bk' at line 7

1 个答案:

答案 0 :(得分:1)

尝试如下

select * from
(
    SELECT bk_boekingen_kenmerk, 
    bk_boekingen_naam, 
    bk_boekingen_soort, 
    bk_boekingen_datum, 
    bk_locatie_naam 
    FROM bk_boekingen_versie1 bk1 
    JOIN bk_locatie loc ON bk1.bk_boekingen_locatie_id=loc.bk_locatie_id 
    UNION ALL
    SELECT bk_boekingen_kenmerk, 
    bk_boekingen_naam, 
    bk_boekingen_soort, 
    bk_boekingen_datum, 
    bk_locatie_naam 
    FROM bk_boekingen_versie2 bk2 
    JOIN bk_locatie loc ON bk2.bk_boekingen_locatie_id=loc.bk_locatie_id        
    UNION ALL       
    SELECT bk_boekingen_kenmerk, 
    bk_boekingen_naam, 
    bk_boekingen_soort, 
    bk_boekingen_datum, 
    bk_locatie_naam 
    FROM bk_boekingen_versie3 bk3 
    JOIN bk_locatie loc ON bk3.bk_boekingen_locatie_id=loc.bk_locatie_id 
) tab
    WHERE bk_boekingen_datum >='1399500000' 
    and bk_boekingen_status != '20'
    ORDER BY bk_boekingen_datum ASC