UPDATE Fact_List sfl, Respondents_Dim rd SET sfl.Zip = rd.Zip where sfl.Panel_Id=rd.Panel_Id HAVING MAX(rd.Valid_From)
respondents_dim` (
`Respondents_Key` int(11) NOT NULL AUTO_INCREMENT,
`Panel_Id` int(11) DEFAULT NULL,
`First_Name` varchar(100) DEFAULT NULL,
`Last_Name` varchar(100) DEFAULT NULL,
`Specialty` varchar(100) DEFAULT NULL,
`Dataset` varchar(50) DEFAULT NULL,
`Age` int(11) DEFAULT NULL,
`Sex` varchar(10) DEFAULT NULL,
`Zip` varchar(100) DEFAULT NULL,
`Valid_From` date DEFAULT NULL,
`Valid_To` date DEFAULT NULL)
CREATE TABLE IF NOT EXISTS `fact_list` (
`Panel_Id` int(11) DEFAULT NULL,
`Project_Id` int(11) DEFAULT NULL,
`Zip` varchar(100) DEFAULT NULL,
`Employee_Id` int(11) DEFAULT NULL,
`Created_Date` date DEFAULT NULL
)
第一个更新的命令是从respondents_dim其中两个连接使用panel_id但可能有多个记录与该ID和最新VALID_FROM日期邮编更新fact_list表应该被考虑。误差在MySQL查询的加入,采摘最新日期记录
我试图执行它,但它是给下面的错误
1064 - 你在你的SQL语法错误;检查对应于您的MySQL服务器版本的手册,以在第1行'HAVING MAX(rd.Valid_From)'附近使用正确的语法。
查询中是否有任何错误?
同样的错误#1064 - 你在你的SQL语法错误;检查对应于您的MySQL服务器版本的手册,在第1行'HAVING MAX(rd.Valid_From)'附近使用正确的语法 – user1597811 2013-02-15 08:52:45
现在检查@ user1597811。如果它的工作正常,然后接受答复/解决。 – Bajrang 2013-02-15 09:20:49
嗨,Lucia,谢谢你的回复。我试过了,但仍然是上面提到的同样的错误。 – user1597811 2013-02-15 09:25:21