sql 语句(精品)

GROUP BY:

select avg(latency),projectName,data_trunc('hour'm\,_time_) as hour group by projectName,hour.

 

特殊条件:

1、空值判断:is null

Select * from table_Name where comm is null;

2、between and(范围之间的值)

Select * from table_Name where sal between 100 and 300;

3、In(类似C++中的枚举)

Select * from table_Name where sql in (100,200,300)

4\like

Like模糊查询

Select * from table_Name sal like "%M";

%表示多个字值,_下划线表示一个字符。

二、不带比较运算符的where子句。

SELECT studentNO FROM student WHERE 0;

则回返回一个空集,因为每一行记录WHERE都返回false。

SELECT studentNO FROM student WHERE 1;

返回student表所有行中studenNO列的值。因为每一行记录WHERE 都返回true。

 

1)AND & OR

AND & OR运算符用于基于一个以上的条件

2)ORDER BY(默认是ASC)

ORDER BY 关键字用于对结果进行排序。

  1、用于对结果集按照一个列或多个列进行排序。

  SELECT * FROM Websites ORDER BY country,alexa;(按照country再按照alexa来排序)。

  2、默认按照升序对记录进行排序,如果需要按照降序对记录进行排序,那要使用DESC关键字。

ORDER BY 多列的时候,先按照第一个column name排序,再按照第二个column name排序。

order by A,B;//默认按升序排。

order by A desc,B;//这时候A降序,B升序排列。

order by A , desc B;//这时候A升序,B降序。

3)INSERT INTO 语句用于向表中插入新记录。

有两种编写形式。

第一种形式无需指定要插入数据的列名,只需提供被插入的值即可。(没有指定要插入的列名的形式需要列出插入行的每一行数据).

INSERT INTO TABLE VALUE(value1,value2,value3);

第二种形式需要指定列名以及被插入的值。

INSERT INTO TABLE (column1,column2,column3,...) VALUES (value1,value2,value3);

 

insert into select 和 select into from

insert into TABLE_A select  * from TABLE_B where neza='neza'      --插入一行,要求表TABLE_A 必须存在。

select * into scorebak from where neza = 'neza';          --也是插入一行,要求scorebak不存在。

 

4)UPDATE语句

 

UPDATE table_name SET column1 = value1,column2 = value2,... WHERE some_column = some_value;

执行没有where子句的update要慎重。(在MySql中可以通过设置sql_safe_updates 这个自带的参数来解决,当该参数开启的情况下,你必须在update语句后携带条件where,否则就会报错)。

 

 

 

 

posted @ 2020-08-11 15:33  进击的小尧好程序员  阅读(135)  评论(0编辑  收藏  举报