关于full join 报错的 的问题
在mysql 中写了个小sql 文,但是执行总出错:
创建表的语法是:
CREATE TABLE `saledm` (
`saleqty` decimal(10,0) DEFAULT NULL,
`sqleamont` decimal(10,0) DEFAULT NULL,
`month` int(11) NOT NULL,
`culi` decimal(10,0) DEFAULT NULL,
`year` varchar(4) NOT NULL,
PRIMARY KEY (`month`,`year`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
插入两条数据:
INSERT INTO `saledm` VALUES ('123', '2599', '2', '232', '2010');
INSERT INTO `saledm` VALUES ('12', '1231', '3', '231', '2010');
执行语句是:
SELECT
*
FROM
saledm t1
FULL JOIN (
SELECT
*
FROM
saledm
WHERE
`month` = '3'
) t2 ON t1. YEAR = t2. YEAR
where t1.`month` = '2'
就报错:
错误信息如下:
[Err] 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 'FULL JOIN (
SELECT
*
FROM
saledm
WHERE
`month` = '3'
) t2 ON t1.' at line 5
但是改成left join 就不报错
请高手和大侠们帮帮忙