sql - 如何在删除命令上添加条件?

标签 sql postgresql sql-delete

我有一个删除命令:

DELETE FROM exam WHERE excode = '2';

但我需要它以某种方式引用另一个表,并且如果该表中存在 excode 2,则不删除它。

我一直在看这个:

http://www.postgresql.org/docs/8.2/static/sql-delete.html

这看起来很接近我需要理解的内容:

DELETE FROM films
WHERE producer_id IN (SELECT id FROM producers WHERE name = 'foo');

希望得到一些帮助

最佳答案

根据我的理解,这就是您想要的:

DELETE FROM exam WHERE excode = '2' and not exists (select * from table2 where excode = '2')

语法适用于 SQL Server,但我认为您无需更改即可使用它。

如果这不是您想要的,请多解释一下。

关于sql - 如何在删除命令上添加条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27304803/

相关文章:

php - MySql SELECT/DELETE 不适用于特定列

database - 如何在 Neo4j 中删除/创建数据库?

php - 插入数据mysql数据库时出错,

mysql - 演示索引 SQL 表的性能优势

mysql - sql 查询,在 where 类中进行行比较

具有给定角色的 PostgreSQL 触发器

mysql - MySQL 是否支持部分索引?

java - 将列名作为 PreparedStatement 的输入参数

SQL按同一列中的多个项目进行过滤

SQLite,检查文本字段中是否有任何字母字符