SQL_数据库表的操作

文章目录

    • 前言:
    • 一.表查询
    • 二.修改操作

前言:

     我们之前已经创建了数据库bookMIS,并且在数据库里创建了两张表,分别为AUTHORSBOOKS,现在准备对这两张表进行如下操作:
SQL_数据库表的操作_第1张图片
SQL_数据库表的操作_第2张图片
在表中录入数据之后得到:
SQL_数据库表的操作_第3张图片

一.表查询

查询功能的思考方向:

  • 锁定查找对象的属性
  • 锁定查找对象的位置

固定语法:

select

from

1.查询全体作者的详细信息

use "bookMIS"
--首先使用数据库,也就是指明表的方向,所在的数据库
select *
--  *代表全体信息
from AUTHORS
go

SQL_数据库表的操作_第4张图片
2.查询全部书籍的书名和价格

首先锁定查找对象的属性BookNamePrice

再锁定查找对象的位置:表BOOKS

某表的属性表示方法:表名.属性名

例如:表BOOKS的属性BookName,Price可以表示为:

BOOKS.BookName,Price

也可以表示为:BOOKS.BookNameBOOKS.Price

use "bookMIS"
--注意按照思考方向来写这段语句
select BOOKS.BookName,Price
from BOOKS
go

3.查询作者的姓名,出生年份和性别,性别转换成小写显示。

小写表示:lower(属性名)这是一个内置函数

use "BookMIS"
select 
AUTHORS.AuthorName,2019-Age,lower(Sex)
from AUTHORS
go

SQL_数据库表的操作_第5张图片
4.查询所有的出版社(结果不能出现重复)

结果不能出现重复的语句是:distinct

use "BookMIS"
select 
distinct BOOKS.Publisher
from BOOKS
go

5.查询价格大于30的书籍的编号和书名

PS:where条件基本上是放在from后边的

use "BookMIS"
select 
BOOKS.BookID,BookName
from BOOKS
where(BOOKS.Price>=30)
go

SQL_数据库表的操作_第6张图片
6.查询编号为‘35’作者的电话和地址

use "BookMIS"
select
AUTHORS.Telephone,AAdress
from AUTHORS
where(AUTHORS.AuthorID=30)
go

SQL_数据库表的操作_第7张图片
7.查询价格在20到40之间的书籍的书名和价格

use "BookMIS"
select
BOOKS.BookName,Price
from BOOKS
where(BOOKS.Price>=20 and BOOKS.Price<=40)
go

SQL_数据库表的操作_第8张图片
8.查询出版社是‘北京邮电大学出版社’和‘清华大学出版社’的图书名称和出版社。

use "BookMIS"
select 
BOOKS.BookID,Publisher
from BOOKS
where(BOOKS.Publisher='清华大学出版社'and Publisher='北京邮电大学出版社')
go

9.查询所有姓‘王’的作者的详细信息

pS:对于姓氏我们要用到通配符:
通配符【通配符的问题我会单独写一篇博客进行介绍】
% 替代一个或多个字符
_ 仅替代一个字符
与通配符与之对应的是‘like’而不是‘=

use "BookMIS"
select
*
from
AUTHORS
where(AUTHORS.AuthorName like '王%')
--like不能换成等号=,因为涉及到通配符的问题
go

我们把上面的题目换一下:
    10.查询姓‘王’且全名为2个汉字的作者的详细信息

use "BookMIS"
select
*
from
AUTHORS
where(AUTHORS.AuthorName like '王_')
--like不能换成等号=,因为涉及到通配符的问题
go

11.查询地址信息不为空的作者的姓名和地址。

use "bookMIS"
select 
AUTHORS.AuthorName,AAddress
from AUTHORS
where (AAddress is not null)
go

SQL_数据库表的操作_第9张图片
12.查询出版社是‘高等教育出版社’且价格小于50的图书的书名

use "bookMIS"
select 
BOOKS.BookName
from BOOKS
where (BOOKS.Publisher in ('高等教育出版社')and Price<=50)
go

/*--自己写的
use "bookMIS"
select 
BOOKS.BookName
from BOOKS
where (BOOKS.Publisher = '高等教育出版社'and Price<=50)
go
这两个是有区别的,后边我会在研究一下。
*/

二.修改操作

     我们第一个介绍的是表的查询操作,在接下来的所有操作中,都是建立在查询操作上的。

将作者表中的列名分别改为‘编号’、‘姓名’、‘年龄’、‘电话’、‘地址’显示。

同样的分析方法:

首先锁定查找对象的属性AuthorID,AuthorName,Age,Telephone,AADress

再锁定查找对象的位置AUTHORS

进行的操作:修改---->as

use "BookMIS"
select
AUTHORS.AuthorID as 编号,AuthorName as 姓名,Age as 年龄,Telephone as 电话,AAddress as 地址
from BookMIS
go

SQL_数据库表的操作_第10张图片

你可能感兴趣的:(数据库)