where语法问题

h4cxqtbf  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(231)

我想加个前缀 myprefix_ 到名为 post . 我被困在一个地方:

DELETE FROM `post` WHERE `post`.`post_id` = ?

我补充道 myprefix_ 在这里:

DELETE FROM `myprefix_post`

但第二部分呢?

WHERE `post`.`post_id` = ?

我要换成这个吗?

WHERE `myprefix_post`.`post_id` = ?

w3link提供了一个信息,语法看起来是这样的,我迷路了,因为“post”是当前表名:

FROM table_name WHERE condition;
mzillmmw

mzillmmw1#

可以为表名指定别名,然后在查询的其余部分使用别名。

DELETE FROM post AS p
WHERE p.post_id = ?

然后可以更改表名,但查询的其余部分可以通过别名继续引用它,因此无需更改其他内容:

DELETE FROM myprefix_post AS p
WHERE p.post_id = ?

否则,您需要在表名前缀出现的任何地方更改它:

DELETE FROM myprefix_post
WHERE myprefix_post.post_id = ?

相关问题