黑马程序员技术交流社区

标题: NMSL [打印本页]

作者: 走到最后    时间: 2019-5-31 17:53
标题: NMSL
#排序查询

SELECT * FROM EMP ORDER BY SAL ASC,COMM ASC;

SELECT * FROM EMP ORDER BY SAL DESC,COMM DESC;

SELECT SAL FROM EMP ORDER BY SAL DESC;

SELECT SAL+MGR ZONG FROM EMP ORDER BY ZONG DESC;

SELECT * FROM EMP WHERE SAL>800 ORDER BY SAL DESC;



#聚合函数

SELECT COUNT(*) 人数 FROM EMP WHERE SAL >1000;

SELECT SUM(SAL) 工资  FROM EMP ;

SELECT MAX(SAL) 最高工资 FROM EMP;

SELECT MIN(SAL) 最低工资 FROM EMP;

SELECT AVG(SAL) 平均工资 FROM EMP;



#分组查询

SELECT DEPTNO ,AVG(SAL) FROM EMP GROUP BY DEPTNO HAVING AVG(SAL)>2000;

SELECT JOB FROM EMP GROUP BY JOB;



#分页查询 LIMIT 方言

SELECT * FROM EMP ;

SELECT * FROM EMP LIMIT 0,3;

SELECT * FROM EMP LIMIT 3,3;





#约束

  /*

        1.主键约束 primary key

        2.非空约束 not null

        3.唯一约束 unique

        4.外键约束 foreign key

  */

今日内容:

        1,parparedStatement:与statement的区别:第一个传递参数,动态编译,占位符为?

然后调用执行对象的setxxx方法对占位符赋值,

          2.线程池C3P0,druid

        c3p0:需要到两个包,到配置文件

                DataSource ds=new ComboPooledDataSource();//创建连接池对象

                ds.getConnection();//通过连接池对象获取连接对象

        Druid:需要到一个包,一个配置文件,要写读取配置文件的代码

                Properties pro=new Properties();//创建集合

                pro.load(demo.class.getClassLoader().getResourceAsStream());//加载配置文件

                DataSource ds=DruidDataSourceFactory.creatStatement(pro); //创建连接池对象

                ds.getConnection();//创建连接对象

        3.创建druid工具类

                1.一个静态代码块:加载线程池对象,

                2.获取连接池对象方法

                3.获取链接对象方法

                4.归还连接对象方法

        4.Spring JDBC 通过JDBCTemplate对代码进行简化,

                JdbcTemplate template=new JdbcTemplate();//创建JdbcTemplate对象

                调用其中的方法

                1.query()

                2.queryformap

                3.queryforlist

                4.queryforobject



创建数据库的三种方式:

        1.create database 库名;

        2.create database 库名 character set gbk;

        3.create database if not exists 库名;



        show create database db1;查看db1的创建细节;

       

        select database(); 查看正在使用的数据库;

        use 库名;  切换数据库;



创建表:

        1.create table student(age int,name varchar(20),score double(5,2));字段+类型

        2.show tables;查看所有的表;

        3.desc 表名;  查看对应表明的结构;

        4.show create table 表名;查看创建表的细节;

        5.创建一个表结构相同的表:create table 新表名 like 旧表名;

        6.删除表:dorp 表名;

                  drop table if exists 表名;



修改表:1.修改表结构:alter table 表名 add 字段 类型;

        2.修改列表类型:alter table 表名 modify 列名 新的类型;(只能修改表的类型)

        3.修改列名:alter table 表名 change 旧列名 新列名 类型;(既能修改列名又能修改类型)

        4.删除列:alter table 表明 drop 列名;

        5.修改表名:alter table 表名 rename to 新表名;

        6.修改表的字符集:alter table 表名 character set gbk;

        7.插入记录:insert into 表名 (字段1,字段2)values(值1,值2);

        8.更新表记录:update 表名 set 列名=值 ;更改所有该列的值

        9.更新表记录:update 表名 set 列名=值 {where 条件};更改满足条件的列的值;

        10.删除表记录:delete from 表名 [where 条件];删除满足条件的表记录;未写条件则删除所有的记录

        11.删除表记录:truncate table 表名;删除表,同时创建一个相同表结构的新表;



查询表:

        1.select * from 表名;获取表中的所有信息;

                select * from 表名 where 条件;

        2.select 字段1,字段2 from 表名;从表中筛选一部分字段;

                select 字段+固定值 from 表名;

                select 字段 from 表名 where 条件;



        3.取别名:select 字段1 as 别名,字段2 as 别名 from 表名 as 别名;as可以省略;

        4.查询指定列切结果不出现重复:select distinct 字段 from 表名;







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2