首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql删除所有行(其中col != this或col != that或col != otherthing)

Mysql删除所有行(其中col != this或col != that或col != otherthing)
EN

Stack Overflow用户
提问于 2011-04-02 03:10:05
回答 2查看 7.5K关注 0票数 6

我在编写查询时遇到了问题。假设我有一个满是汽车制造商和型号的表,但我想删除所有与型号列表不相关的行,我写了这个……

代码语言:javascript
复制
DELETE FROM `cars` WHERE 
`make` != 'Ford' OR
`make` != 'Toyota' OR
`make` != 'Cadillac'

但是,它正在删除所有行。我该如何写这篇文章,以便保留福特、丰田和凯迪拉克,但删除庞蒂克、Datsun和雷诺?

感谢你在这方面的帮助!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-02 03:29:07

更易于阅读:

代码语言:javascript
复制
DELETE FROM `cars` WHERE `make` NOT IN ('Ford', 'Toyota', 'Cadillac')
票数 11
EN

Stack Overflow用户

发布于 2011-04-02 03:12:15

代码语言:javascript
复制
DELETE FROM cars
WHERE make <> 'Ford'
AND make <> 'Toyota'
AND make <> 'Cadillac'

您的查询正在删除所有行,因为:

  1. 首先删除所有不是福特的行(只留下福特)
  2. 然后删除所有不是丰田的行(不留下任何内容)
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5517761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档