Sql 如何解决
我要学习sql,但还没有解决这个问题,有人能帮我吗Sql 如何解决,sql,Sql,我要学习sql,但还没有解决这个问题,有人能帮我吗 展示非优胜者的参赛者 删除所有非优胜者 谢谢 不在示例中 1. SELECT * FROM runners WHERE id NOT IN (SELECT id_winner FROM races); 2. DELETE FROM runners WHERE id NOT IN (SELECT id_winner FROM races); 不存在这样的例子 1. SELECT * FROM runners a WHERE NOT EXIS
谢谢 不在示例中
1. SELECT * FROM runners WHERE id NOT IN (SELECT id_winner FROM races);
2. DELETE FROM runners WHERE id NOT IN (SELECT id_winner FROM races);
不存在这样的例子
1. SELECT * FROM runners a WHERE NOT EXISTS (SELECT 1 FROM races WHERE id_winner = a.id);
2. DELETE a FROM runners a WHERE NOT EXISTS (SELECT 1 FROM races WHERE id_winner = a.id);
到目前为止,您尝试了哪些查询来解决这个问题?对于空值,NOT in有点危险。是的,他的要求很简单。对于较大的数据集,NOT EXISTS更好。警告是关于空值,而不是数据集的大小。(此外,目前大多数dbms产品都以同样的方式进行优化。)
1. SELECT * FROM runners a WHERE NOT EXISTS (SELECT 1 FROM races WHERE id_winner = a.id);
2. DELETE a FROM runners a WHERE NOT EXISTS (SELECT 1 FROM races WHERE id_winner = a.id);