数据库总结

两大数据库

mysql和oracle的区别
mysql免费 开源
oracle花钱 闭源

confirm 确认

建立表格

-- 这是第一个建表语句
-- 建表时需要指定:1、表名;2、表中字段(列)名;3、字段的数据类型
-- 数值型
-- 【int(n)最大长度--整数,decimal(7最长七位,2小数点后两位)】
-- 字符型
-- varchar(2000)一个英文一个字符,一个中文两个字符
-- DATE年月日 DATETIME年月日时分秒
CREATE TABLE students(
  `stuid` INT(9),
  `stuname` VARCHAR(100),
  `height` DECIMAL(3,2),  -- 每行要有,
  `birthday` DATE    -- 最后一行没有,
);

-- 向表中插入数据
INSERT INTO students(stuid,stuname) VALUES(9527,'李白');
INSERT INTO students(stuid,stuname,height,birthday) VALUES(9527,'李白他哥',1.59,'2018-11-11');

-- 新建一个表:course
-- id     课程的编号
-- cname  课程的名字
-- credit 学分
-- teacher 讲师名字
-- classroom 上课教室
-- starttime 开课时间

-- 插入数据
-- 1001 Java 2   小南哥 A9-202 2019-2-19
-- 1001 C++  0.5 中南哥 A9-301 2019-1-19
-- 1001 Python 3 大南哥 A9-405

CREATE TABLE course(
  `id` INT(9),
  `cname` VARCHAR(100),
  `credit` DECIMAL(2,1), 
  `teacher` VARCHAR(100),
  `classroom` VARCHAR(100), 
  `starttime` DATE
);


INSERT INTO course(id,cname,credit,teacher,classroom,starttime)
VALUES(1001,'Java',2,'小南哥','A9-202','2019-2-19');
INSERT INTO course(id,cname,credit,teacher,classroom,starttime)
VALUES(1001,'C++',0.5,'中南哥','A9-301','2019-1-19');
INSERT INTO course(id,cname,credit,teacher,classroom)
VALUES(1001,'Python',3,'大南哥','A9-405');
INSERT INTO course -- 没写后面的括号的意思就是所有的都**按照类型顺序填写**
VALUES(1001,'C++',0.5,'南哥','A9-208','2019-8-19');

CREATE TABLE newcourse(
  `id` INT(9),
  `cname` VARCHAR(100),
  `credit` DECIMAL(2,1), 
  `teacher` VARCHAR(100),
  `classroom` VARCHAR(100), 
  `starttime` DATE
);
INSERT INTO newcourse(id,cname,credit,teacher,classroom,starttime)
VALUES(1001,'Java',2,'小南哥','A9-202','2019-2-19');

-- 简单查询
-- 1、查什么;2、从哪里查
SELECT id,cname,credit,teacher,classroom,starttime
FROM course

SELECT * -- 星号的意思就是查找全部列
FROM course

INSERT INTO students(stuid,stuname,height,birthday) 
VALUES(9527,'李白他姐',1.59,'2018-11-11');
INSERT INTO students(stuid,stuname,height,birthday) 
VALUES(9528,'李白他二哥',1.59,'2018-11-11');
INSERT INTO students(stuid,stuname,height,birthday) 
VALUES(9529,'李白他二姐',1.59,'2018-11-11');
INSERT INTO students(stuid,stuname,height,birthday) 
VALUES(9530,'李白他三哥',1.59,'2018-11-11');
INSERT INTO students(stuid,stuname,height,birthday) 
VALUES(9531,'李白他三姐',1.59,'2018-11-11');


-- 条件查询,,,,数值型的条件
-- 查询身高1.5以上的所有人的数据
-- >,<,>=,<=    不等于 !=  或者<>

SELECT *
from students
WHERE height >= 1.6 -- 没有等于号在前面的类型

-- 查询姓名就是李白的学员信息
-- 字符类型作为条件需要加单引号
SELECT *
from students
WHERE stuname = '李白'
-- Unicode码 把所有的世界的语言编号的码

-- 查找2010年出生的学员信息
-- int**不需要**''  字符串类型的都**需要**''
SELECT *
from students
WHERE birthday < '2019-1-1'   -- 必须是年-月-日

-- 逻辑运算符(and,or)
-- 查询名字是李白,身高1.6以上的学员信息
SELECT *
from students
WHERE stuname = '李白' AND height >= 1.6

-- 查询名字是李白,或者身高1.6以下的学员信息
SELECT *
from students
WHERE stuname = '李白' OR height <= 1.6

-- 查询每个人的姓名,工资,年薪
SELECT stuname 姓名,salary 月薪,salary*12+10 "年薪yearly salary"
-- 工作当中表达式中的名头有公式的必须列别名
from students

-- 特殊比较运算符
-- 查询所有人工资大于等于1500小于等于3500的所有人的信息
SELECT *
from students
WHERE salary >= 1500 AND salary <= 3500

-- 查询2000年到2017年出生的所有人信息

SELECT *
from students
WHERE birthday >='2000-1-1' AND  birthday <='2020-12-31'

SELECT *
from students
WHERE birthday BETWEEN '2000-1-1' AND  '2020-12-31'

-- BETWEEN a AND b  大于等于a小于等于b
SELECT *
from students
WHERE salary BETWEEN 1500 AND  3500

-- IN(参数...)
-- 查询身高是1.59和1.6和9的所有人的信息

SELECT *
from students
WHERE height = 1.59 OR height = 1.6 OR height = 9

select *
from students
WHERE height in (1.59,1.6,9) -- in的意思就是or的合集

-- 查询姓名是李白,李白他哥,李白他二姐
select *
from students
WHERE stuname in ('李白','李白他哥','李白他二姐')


-- LIKE模糊查询(部分匹配)必须会
-- 通配符 : %--任意多个字符就相当于XXX
-- 查询姓名是以'小'开头人的信息
SELECT *
from students
WHERE stuname LIKE '%哥%'

-- 查询名字是以哥或姐结尾的
SELECT *
from students
WHERE stuname LIKE '%哥' OR stuname LIKE '%姐' 

-- 查询2013年出生的人的信息
SELECT *
from students
WHERE birthday BETWEEN '2000-1-1' AND  '2020-12-31'

-- LIKE不要用在查询时间上,有风险
SELECT *
from students
WHERE birthday LIKE '2013%'


-- 建两张相关表
CREATE TABLE class(
   `id` int(9),    -- 班级编号
   `cname` varchar(100),   -- 班级名称
   `croom` varchar(100)   -- 所在教室
)


CREATE TABLE stu(
  `id` int(9),      -- 学生编号
  `name` varchar(100), -- 姓名
  `birthday` date,  -- 出生日期
  `cno` int(9)    -- 所在班级
)

-- 查询学生编号,姓名,所在班级编号,所在教室
SELECT stu.id,NAME,cno,croom,class.id -- stu.id的意思就是stu里的id
from stu,class
where cno=class.id

-- 查询姓名中包含'王'的学生编号,姓名,所在班级编号,所在教室,班级名称
SELECT stu.id,NAME,cno,croom,class.id,cname -- stu.id的意思就是stu里的id
from stu,class
where cno=class.id AND name LIKE '%王%'


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349

推荐阅读更多精彩内容

  • 作者:极客小俊 一个专注于web技术的80后我不用拼过聪明人,我只需要拼过那些懒人 我就一定会超越大部分人!@极客...
    极客小俊阅读 264评论 2 0
  • 一、性能相关 1 导致索引失效 不符合左前缀匹配原则mysql 会一直向右匹配直到遇到范围查询(>,<,betwe...
    格林哈阅读 215评论 0 1
  • 由于最近要参加面试,不得不把雪藏很久的数据库知识拿出来翻一翻,我想吧,数据库作为一个基础也是核心的技能是每一个...
    什么都不会的码农丶阅读 500评论 0 8
  • 事务处理 事务的概念来自于两个独立的需求:并发数据库访问,系统错误恢复。 一个事务是可以被看作一个单元的一系列SQ...
    whupenger阅读 246评论 0 0
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,041评论 0 4