2012-08-08 27 views
1

我使用Sybase和它抱怨下面有语法错误:不明白为什么下面的查询是错误的

DELETE 
    * 
FROM 
    table1 INNER JOIN table2 ON table1.some_col = table2.some_col 

特定的错误是:Incorrect syntax near the keyword 'inner join'.

我在网上查,这人们是如何去做的,但我拒绝接受这一点。

有人能告诉我什么是错的吗?

回答

2

假设你打算基于与表2的联接FROM表1删除以下

DELETE table1 
FROM 
table1 INNER JOIN table2 ON table1.some_col = table2.some_col 
+0

类似于anothers的Sybase语法?我发现他们的文档都非常模糊。 – czchlong 2012-08-08 18:44:47

+0

@czchlong - 我一直在使用RDBMS很长一段时间。 SyBase使用TSQL和*看起来很像MS SQL Server。这是一个陷阱。有太多的差异,你最好只是假设它是完全不相关的,并再次开始你的学习(就像你正在学习DB2或Informix一样)。 – MatBailie 2012-08-08 18:54:34

+0

@Dems谢谢Dems,我一直使用MySQL,并且我已经学会了恨Sybase。 – czchlong 2012-08-08 19:04:31

1

Sybase's Manual,它应该是这样的:

DELETE 
FROM table1 
FROM table1, table2 
WHERE 
    table1.some_col = table2.some_col 
相关问题