数据库——基础(数据库操作,表格操作)——增加高级查询

笔记

LAMP:Linx(操作系统)
A(阿帕奇)——网页的应用程序
M(Mysql):体积小,应用简单
P(PHP)

第一步:搭建网页环境——A\M\P

WAMP:用WAMP搭建环境

DW:更好的显示

数据库的基本操作:

数据库——表结构——字段(列)

每一行数据成为一条数据(记录)

特点:关系型数据库,有严格的规范

1、必须有主键:能够唯一标识一条数据的字段

2

T-SQL:通用的数据库操作语句

自增长列code(主键列) ;连接键表 最后一个字段不加 ,#注释

创建表:
create table Family
(
Code varchar(50) primary key,
Name varchar(50) not null,
Sex bit

);
create table Nation
(
Code varchar(50) primary key,
Name varchar(50)
);

create table Info
(
Code int auto_increment primary key,
Name varchar(50),
Sex bit,
Birthday date,
Height float,
Nation varchar(50) references Nation(Code) //一般不写
)
primary key:主键
not null:非空
auto_increment:自增长列,整形,自动增长不用添加
references:引用 外键关系

删除表
drop table Family

创建数据库:create database mydb

在数据库中增加一列:alter table t1 add column addr varchar(20) not null;
这条语句会向已有的表t1中加入一列addr,这一列在表的最后一列位置。

上面这个命令的意思是说添加addr列到user1这一列后面:
alter table t1 add column addr varchar(20) not null after user1;

删除数据库:drop database mydb

CRUD:增删改查
C:create 增加数据(必须要写,可以为空)
insert into nation values(‘n001‘,‘汉族‘) -普通
insert into Name values(‘‘,‘‘)自增长列不用填,空着,不用填空字符
insert into nation (Code ,Name) values(‘n002‘,‘huizu‘)-往表中添加特定列的数据

R:read 查询数据
一、查询所有数据
select * from info 查所有
select Name from info 查特定列
二、根据条件查询
select * from info where Code=‘p001‘
select * from info where Code=‘p001‘ and nation=‘n003‘ 多条件 并关系 查询
select * from info where name=‘胡军‘ or nation=‘n001‘ 多条件 或关系 查询
select * from car where price>=50 and price<=60 范围查询
select * from car where price between 50 and 60 范围查询常用
三、模糊查询
select * from car where name like ‘%奥迪%‘ %通配符 代表任意多个字符
select * from car where name like ‘_马%‘ _通配符 代表任意一个字符
四、排序
select * from car order by price (asc) 按照价格升序排列
select * from car order by price desc 按照价格降序排列
select * from car order by price desc,oil desc 按照两列进行排序-先按照价格降序排列,再按照油耗降序排列
五、统计函数(聚合函数)
select count(code) from car 查询表中有多少条数据
select max(price) from car 取价格最大值
select min(price) from car 取价格最小值
select sum(price) from car 取价格总和
select avg(price) from car 取价格平均值
六、分组查询
select brand from car group by brand having count(*) >2 查询所有系列中数量大于2的
七、分页查询
select * from car limit 5,5 跳过几条数据取几条数据
八、去重查询
select distinct brand from car 可以去哪一列的重复

U:update 修改数据
update nation set Name=‘huizu‘-全部修改
update nation set Name=‘huizu‘ where Code=‘n002‘-修改某一条数据
update nation set Name=‘huizu‘ where Code=‘n003‘ and Code=‘n004‘-修改某一条数据

D:delete 删除数据
delete from nation-删除整个表中的数据
delete from nation where Code=‘n001‘-删除一条数据

高级查询

一、多表连接
1.select * from Info,Nation where Info.Nation=Nation.Code
select Info.Code,Info.Name,Nation.Name from Info,Nation where Info.Nation=Nation.Code
2、join连接
select * from Info join Nation on Info.Nation=Nation.Code
二、多表联合(列的扩展)
select * from Info where Code=‘p001‘
union
select * from Info where Nation=‘n001‘
三、子查询(无关子查询)
select * from Info where Nation (!)= (select Code from Nation where Name=‘汉族‘)
select * from Info where Nation (not)in (select Code from Nation where Name=‘汉族‘ or Name=‘苗族‘)
四、子查询(相关子查询)
select * from Car a where a.Oil<(select avg(Oil) from Car b where b.brand=a.brand)
第一次查询里层查询变为 select avg(Oil) From car where brand=‘b001‘

时间: 2024-08-02 02:49:36

数据库——基础(数据库操作,表格操作)——增加高级查询的相关文章

Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 &#39;AR模式&#39;]

public function getMinLimit () {        $sql = "...";        $result = yii::app()->db->createCommand($sql);        $query = $result->queryAll();         return array (                $query [0] ['max'],         );    } $connection=Yii::

数据库中的T-sql语句 条件修改 高级查询

1.创建数据库:create database --数据库名,不能中文,不能数字开头,不能符号开头 2.删除数据库:drop database-- 数据库名 use student--使用数据库 3.注释:一段 /* */ 一行 -- 4.创建表: create table 表名            create table 表名            (              列名 数据类型,               ...               ...           

DB2数据库表转为excel表格操作

从db2中导出表有种方法很简单,时间长的程序员都接触过吧.之前遇到这个问题从网上找不到合适的答案,今天分享出来希望可以帮到需要的同行. 因为我家里没装db2  所以以mysql界面为例子.操作很简单对结果没影响. 在db2 写sql语句.select * from 表名得到你需要的数据.选中需要的内容    Ctrl + C 复制后,找到Excel表格. 点击此处的常规选择文本选项. 再Ctrl +V复制即可.本人试过完美解决,希望亲身的经历能帮到一起努力的你!!

Oracle数据库基础知识_字符串操作相关2

6.LPAD,RPAD 作用:左/右边的字符串填充一些特定的字符语法: LPAD(string , n, [pad_String])          string:可是字符或者参数                 n:字符的长度,是返回的字符串的数量,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符; pad_string:是个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格. 例如 SELECT

Oracle数据库基础--建表语法+操作

语法 1.建表 create table 表名( 列名 数据类型, -- ); 2.删除表:drop table 表名; 3.添加列:alter table 表名 add(列名 数据类型); 4.修改列:alter table 表名 rename column 原列名 to 列名; 5.修改数据类型:alter table 表名 modify 列名 数据类型; 6.删除列:alter table 表名 drop column 列名; 7.添加注释 添加表注释:comment on table 表

剑指Offer——知识点储备-数据库基础

剑指Offer--知识点储备-数据库基础 数据库 事务 事务的四个特性(ACID): ??原子性(Atomicity).一致性(Consistency).隔离性(Isolation).持久性(Durability) - (1)原子性 整个事务中的所要操作要么全部提交成功,要么全部失败回滚. - (2)一致性 保证数据库中的数据操作之前和操作之后的一致性.(比如用户多个账户之间的转账,但是用户的总金额是不变的) - (3)隔离性 隔离性要求一个事务对数据库中数据的修改,在未提交完成前对于其它事务是

MYSQL数据库基础

MySQL数据库基础 本文的所有操作是基于CMD命令行操作方式,且可适当参考<打通MySQL的操作权限>中的内容,该文算是针对前期的环境配置问题提供了一个较为全面的解决方案,与本文是一个相(yao)辅(xiang)相(hu)成(ying)的关系. 一.连接相关 1. 启动MySQL服务器:net start mysql 2. 连接MySQL数据库:mysql -uroot -h127.0.0.1 -ppassword 3. 断开MySQL数据库:连接到MySQL服务器后,可通过在MySQL提示

Mysql 数据库基础 学习笔记

数据库基础 数据库是存储数据的仓库,实现数据共享,减少数据冗余,采用特定的数据类型,具有较高的数据独立性,具有数据控制功能. 表 ,是一个二维数组,用来存储数据和操作数据的逻辑结构. 数据类型,整数数据类型,浮点数数据类型,精确小数类型,二进制数据类型,日期/时间数据类型,字符串数据类型. 主键 用于唯一标示表中的每条记录.可以定义一列或多了主键.主键不能相同. 数据库技术构成   硬件,软件共同构成 数据库系统,数据库,数据库管理系统(DBMS),数据库应用程序. SQL 语言  结构化查询语

mongo数据库基础操作

概念 一个mongod服务可以有建立多个数据库,每个数据库可以有多张表,这里的表名叫collection,每个collection可以存放多个文档(document),每个文档都以BSON(binary json)的形式存放于硬盘中,因此可以存储比较复杂的数据类型.它是以单文档为单位存储的,你可以任意给一个或一批文档新增或删除字段,而不会对其它文档造成影响,这就是所谓的schema-free,这也是文档型数据库最主要的优点.跟一般的key-value数据库不一样的是,它的value中存储了结构信