首页 > 代码库 > MySQL命令学习(二)

MySQL命令学习(二)

(13)where字句操作符

=            等于

<>          不等于

!=           不等于

<            小于

>            大于

>=          大于等于

BETWEEN          在指定的两个值之间

例如:

找出学号是0007到0009之间的学生记录(不包括0009)?

SELECT* FROM student_info WHERE stu_id BETWEEN 1001101620007 AND 1001101620009;


(14)And 操作符

为了通过不止一个列进行过滤,可使用and操作符给where字句附加条件

例如:

找出专业是“软件工程”并且性别是男生的学生记录?

SELECT* FROM student_info WHERE stu_sex = ‘男‘ AND stu_major = ‘软件工程‘;


(15)OR 操作符  

指示MySQL检索匹配任一条件的行

例如:

找出专业是“网络工程”和“电子信息”的所有学生记录?

SELECT* FROM student_info WHERE stu_major = ‘电子信息‘ OR stu_major = ‘网络工程‘;

找出“网络工程”和“软件工程”两个专业所有男生的学生记录?

SELECT* FROM student_info WHERE (stu_major = ‘网络工程‘ OR stu_major = ‘软件工程‘) AND stu_sex = ‘男‘;


(16)IN 操作符   

是用来指定条件范围,范围中的每个条件都可以进行匹配;IN取合法值的由逗号分隔的清单,全都括在圆括号内。

例如:

找出特定的三个学号的学生记录?

SELECT* FROM student_info WHERE stu_id IN(1001101620007,1001101650018,1001101650019);


(17)NOT 操作符     

作用是否定它之后所跟的任何条件

例如:

找出不是“网络工程”和“软件工程”这两个专业的学生记录?

SELECT* FROM student_info WHERE stu_major NOT IN (‘软件工程‘,‘网络工程‘);


(18)LIKE 操作符     

用来匹配值的一部分的特殊字符

%    通配符         表示任何字符出现的任意次数

_     通配符         表示任何字符出现有且仅有一次

例如:

找出专业名称后两个字是“工程”的所有学生记录?

SELECT       * FROM student_info WHERE stu_major LIKE‘%工程‘;

找出姓“王”且名字是两个字的学生记录?

SELECT* FROM student_info WHERE stu_name LIKE ‘王_‘;


附录:创建例子表的语句

CREATETABLE customers(

       cust_id int NOT NULL AUTO_INCREMENT,

       cust_name char(50) NOT NULL,

       cust_address char(50) NULL,

       cust_city char(50) NULL,

       cust_state char(5) NULL,

       cust_zip char(10) NULL,

       cust_country char(50) NULL,

       cust_contact char(50) NULL,

       cust_email char(255) NULL,

       PRIMARY KEY (cust_id)

)

 

CREATETABLE orders(

       order_num int NOT NULL AUTO_INCREMENT,

       order_date datetime NOT NULL,

       cust_id int NOT NULL,

       PRIMARY KEY (order_num)

)

 

CREATETABLE vendors(

       vend_id int NOT NULL AUTO_INCREMENT,

       vend_name char(50) NOT NULL,

       vend_address char(50) NULL,

       vend_city char(50) NULL,

       vend_state char(5) NULL,

       vend_zip char(10) NULL,

       vend_country char(50) NULL,

       PRIMARY KEY (vend_id)

)

 

CREATETABLE orderitems(

       order_num int NOT NULL,

       order_item int NOT NULL,

       prod_id char(10) NOT NULL,

       quantity int NOT NULL,

       item_price decimal(8,2) NOT NULL,

       PRIMARY KEY (order_num,order_item)

)