数据库中对表的增删改以及单表的查询

编程入门 行业动态 更新时间:2024-10-09 05:19:08

数据库<a href=https://www.elefans.com/category/jswz/34/1762683.html style=中对表的增删改以及单表的查询"/>

数据库中对表的增删改以及单表的查询

数据库中对数据的操作(CRUD)

1.CREATE

INSERT INTO table_name(field1,field2,... ...fieldn)VALUES(value1,value2,... ...valuen)

其中field表示表中的字段名,value是插入的数值,字符串类型要用英文单引号引起来

INSERT INTO table_name1(field11,field12,field13,... ...field1n)SELECT(field21,field22,field23,... ...field2n)FROM table_name2WHERE... ...

上述语句中table_name1 代表要插入数值的表,field11… …表示要插入的字段,table_name2 表示插入的数值从哪个表来。 参数field21… …代表从table_name查询数值的字段。

2.UPDATE

1.更新特定的数据记录

UPDATE table_name SET field1=value1,field2=value2... ...WHERE 条件
eg:UPDATE student SET age=21 WHERE id =2
将student表中的id为2 的数据中字段age更新为21

2.更新所有的数据记录

将WHERE的条件改成满足表中所有数据的条件。

3.DELETE

DELETE FROM table_name WHERE 条件(id=2,id<10)

READ查询,单表数据记录查询

SELECT name,age,selary......FROM table_name
SELECT * FROM table_name 查询所有字段数据

1.避免重复查询DISTINCT

 SELECT DISTINCT 字段1,字段2... ... FROM table _nameSELECT DISTINCT jobFROM employee

2.数学四则运算查询

SELECT name,salary*12 FROM employee AS ‘年薪’

3.条件数据查询

1.单条件数据查询

SELECT name FROM employee WHERE id=1

2.多条件数据查询

SELECT nameFROM employeeWHERE id>5&&id<10
SELECT nameFROM employeeWHERE id>5& AND id<10
SELECT name,salaryFROM employeeWHERE salary BETWEEN 5000 AND 12000;//不在条件范围内
SELECT name,salaryFROM employeeWHERE salary NOT BETWEEN 5000 AND 12000;
带IN关键字的查询
SELECT field1, field2... ...FROM table_nameWHERE field IN(value1,value2... ...)//等价于
SELECT field1, field2... ...FROM table_nameWHERE field=value1 OR value2 OR ... ...//不再集合value中的数据
SELECT field1, field2... ...FROM table_nameWHERE field NOT IN(value1,value2... ...)

同过关键字IN 来判断fied的值是否存在集合(value1,value2… …)中
注意:如果用IN关键字查询的数据中存在NULL,不会对查询有影响,如果用NOT IN 查询时数据中存在NULL 则不会有任何查询结果

模糊查询LIKE
SELECT nameFROM student//查询姓孟的WHERE name LIKE '孟%'//查询包含旭字的name LIKE '%旭%'//查询第二个字是旭的name LIKE '_旭%'
单字段排序

升序

SELECR *FROM employee ORDER BY selary ASC;
//等价于,因为默认是升序
SELECR *FROM employee ORDER BY selary ;

降序

SELECR *FROM employee ORDER BY selary DESC;

MySQL中如果数据为NULL 排序为最小值

多字段排序
SELECR *FROM employee ORDER BY selary ASC,id DESC;
ASC可以省略
分页查询LIMIT
SELECR *FROM employee ORDER BY selary ASCLIMIT 4,5;

limit n-1,m:从第n页开始,每页显示5条数据

3.聚合函数

  1. COUNT()统计个数

    SELECT COUNT(id)FROM student;
    
  2. AVG()计算平均值

    SELECT AVG(selary)FROM employee;
    
  3. SUM()求和

     SLEECT SUM(selary)FROM employee
    
  4. MAX(),MIN()最大值最小
    注意:聚合函数中,如果操作的数据没有值,则COUNT()显示0其他显示NULL

4.GROUP BY分组查询

SELECT *FROM studentGTOUP BY address;

5.HAVING分组以后的条件

SELECT *FROM employeeGROUP BY  deptomHAVING AVG(selary)<3888having 后面可以跟聚合函数 where不可以

·

更多推荐

数据库中对表的增删改以及单表的查询

本文发布于:2024-02-14 08:34:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1762515.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:中对   数据库

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!