我最近遇到了一个怪事。以下是有效的 SQL:
DELETE FROM customer *;
PostgreSQL DELETE的文档说星号是一个可能的值output_expression
:
删除每一行后由 DELETE 命令计算和返回的表达式。该表达式可以使用 USING 中列出的一个或多个表的任何列名。写 * 返回所有列。
我试过有没有星星,看不出有什么区别。事实上,我可以在表名之后放置任何单个单词并且它被接受。它甚至不必是实际的列名。没有额外的东西被退回。
db=> DELETE FROM customer wheeeeeee;
DELETE 19
那么它有什么作用,我可以用它做什么?