首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

关于with用法的有关问题

2012-03-25 
关于with用法的问题WITH (`employeecompanycity`(`employee_name`,`city`))AS(SELECT `employee_name` , `

关于with用法的问题
WITH (`employeecompanycity`(`employee_name`,`city`))
AS
(
SELECT `employee_name` , `city`
FROM `works`,`company`
WHERE `works`.`company_name` = `company`.`company_name`)
我在mysql中如上用了with保存中间表的结果却一直抱1046的错,请问是什么问题?AS中的部分没有错误

[解决办法]
MySQL 中不支持这个WITH的语法.

你可以参考一下手册中MYSQL所支持的SQL语法
MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html
[解决办法]
with这个应该是db2 的语法吧 。不是标准的sql,所以mysql中不能使用。


[解决办法]
那MYSQL是怎么保存中间结果的呢?

用个临时表吧。

create TEMPORARY table employeecompanycity SELECT `employee_name` , `city`
FROM `works`,`company`
WHERE `works`.`company_name` = `company`.`company_name`
[解决办法]
SQL2005、ORACLE、ASA11支持WITH,MYSQL目前不支持,用临时表存放结果

热点排行