HTML5数据库:DELETE LIMIT上的SQL错误

时间:2011-09-19 03:57:18

标签: sql database html5 limit

我正在尝试使用HTML5数据库,发现DELETE无法使用LIMIT。

尝试使用Chrome:

> select * from my_table limit 1
item  name
--------------
1     Hi

> delete from my_table limit 1
near "limit": syntax error

这次删除有什么问题吗?

感谢。

2 个答案:

答案 0 :(得分:2)

我不相信delete支持limit(或者,至少它不是我所知道的任何SQL方言)。相反,您要么想要通过

删除表中的所有内容
delete from my_table;

或者更具体地说明要删除的行:

delete from my_table where item=1;

编辑添加: 通常,数据库不会关心行的顺序,除非您告诉它(通过{{1} }语句或某些RDBMS中存在的order by函数。因此,一般情况下,如果多次调用row_number(),则无法保证每次都获得相同的行。换句话说,除非您真的只想从表中获取特定数量的行,并且不关心您获得哪些行,否则select * from my_table limit 1;语句很少有用,而不会对查询提取的行强加某些顺序。

答案 1 :(得分:2)

对于允许SELECT但不是DELETE的SQL方言,请尝试DELETE FROM my_table WHERE item IN (SELECT item FROM my_table LIMIT 1)