SQL语句应该如何进行反向选择?

网友解答: 我曾经做了10多年的MIS开发,对SQL语句有一定的经验,我来回答以下这个问题,我理解你说的SQL语句反向选择应该是WHERE语句中的条件吧。这个问题不太好说,举几个例子来说

网友解答:

我曾经做了10多年的MIS开发,对SQL语句有一定的经验,我来回答以下这个问题,我理解你说的SQL语句反向选择应该是WHERE语句中的条件吧。这个问题不太好说,举几个例子来说明。

比如有一个表,叫做员工信息表,名字叫ygxxb,字段简单说明如下:

字段名 字段描述 类型

ygid 员工号 字符型

ygxm 姓名 字符型

xb 性别 字符型

csrq 出生日期 日期型

hyzt 婚姻状态 字符型 (未婚、已婚、离婚、丧偶)

例子一:

查询出在1980年之后(含1980年)出生的员工信息,可以这样写。

select * from ygxxb where csrq='1980-01-01'

取反语句如下:

select * from ygxxb where csrq<'1980-01-01'

例子二:

查询出在1980-07-01(含当天)到1985-10-30(含当天)之间 出生的员工信息,可以这样写。

select * from ygxxb where csrq='1980-07-01' and csrq<='1985-10-30'

取反语句如下:

select * from ygxxb where csrq<'1980-07-01' or csrq'1985-10-30'

例子三:

查询出‘未婚’和‘已婚’的员工信息,可以这样写。

select * from ygxxb where hyzt in ('未婚'、'已婚')

取反语句如下:

select * from ygxxb where hyzt not in ('未婚'、'已婚')

如何写SQL的取反语句,还是要结合实际的需求来写,而且一般来说也可以有多种写法,只要多加练习,你一定可以做到的。

标签: