一些菜鸟指令吧

来源:互联网 发布:java 验证 香港身份证 编辑:程序博客网 时间:2024/05/29 12:41

在sql中想要搜索带有_的名称怎么输入呢?应该是select 商品名称 from商品清单 where 商品名称 like ‘%/_%’ escape '/';

IN的意思是符合括号内任意数值,其实从表面上看和or是一个意思,比如敲如下指令select  负责人姓名 from负责人清单 where负责人ID IN

(1,2,3)这里的where指令和where 负责人ID=1 or 负责人ID=3;

想找为NUll值的东西,需要配合IS,比如where贩卖单价 IS NULL;

 

 

 

使用join叙述来连接时,必须先在join之后写上欲结合的资料表,再以on来指定结合条件。inner join是指内部结合,是最基本的集合方式,只要在两个表的公共的字段中有相符的值

 

INNER JOIN(等值连接) 只返回两个表中联结字段相等的行
LEFT JOIN(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录
RIGHT JOIN(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录

INNER JOIN 语法:

INNER JOIN 连接两个数据表的用法:
SELECT * FROM 表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号

INNER JOIN 连接三个数据表的用法:
SELECT * FROM (表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号

INNER JOIN 连接四个数据表的用法:
SELECT * FROM ((表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号) INNER JOIN 表4 ON Member.字段号=表4.字段号;

 

 

 

如果想搜寻的时候按顺序来的话,就是order by...比如 select 姓名 from 负责人姓名 order by 姓名拼音这样,如果后面加上DESC的话就是按降序排列,要是用到ASC的话就是升序排列。

 

如果想统计资料时,比如想找一共有多少件就是select count(贩卖单价) from 商品清单,这样子

 

如果想要群组的话就是group by比如 select 群组名称,count(*) from 商品清单 group by 群组名称 order by群组名称

sum()这个函数主要是用来统计综合的,使用率比较高,主要与group by叙述结合在一起

如果当要只将符合某些条件的统计结果输出时,就要使用到having叙述。不过有一点要注意:必须要在进行了群组化之后才能使用HAVING

如果要想去除重复的话就加上distinct去除重复。。

 

SQL可以用MAX()、MIN()、AVG()这几个函数来求得最大值、最小值、平均值。这些函数与count()、sum()一样,都会把NULL值排除在统计对象外。另外由于MAX()和MIN()对日期也有效,因此可以用来求得最新的处理日。

 

子查询必须要学会,就是where 中再有个select的查询。。

 

原创粉丝点击