首页 > 数据库 >第一天sql总结

第一天sql总结

时间:2022-10-18 11:33:28浏览次数:52  
标签:总结 name 第一天 -- char sql cno where select

建表相关操作

CREATE TABLE table_name( 
   column1 datatype, 
   column2 datatype, 
   column3 datatype, 
   ..... 
   columnN datatype, 
   PRIMARY KEY( one or more columns ));

创表时添加约束


主键约束
CREATE TABLE student(
	sno char(10) NOT NULL PRIMARY KEY,
	sname varchar(8) NULL,
	ssex char(2) NULL,
	sbirthday date NULL,
	sdept char(16) NULL,
	saddress varchar(50) NULL,
	speciality varchar(20) NULL,
	
)
设置联合主键
 CREATE TABLE tb_emp5
    -> (
    -> name VARCHAR(25),
    -> deptId INT(11),
    -> salary FLOAT,
    -> PRIMARY KEY(name,deptId)
    -> );
检查约束
create table teacher(
	tno char(3) primary key not null,
	tname varchar(8) null,
	tsex char(2) null check(tsex='男' or tsex='女'),
	tbirthday date null,
	tdept char(16) null
)	
create table teaching(
	cno char(5) not null,
	tno char(3) not null,
	cterm tinyint null check(cterm > 1 or cterm < 10) 
)

建表后添加约束

检查约束
alter table student
add constraint CK_gender check(ssex='男' or ssex='女')

插入数据

指定每一列
insert into course(cno,Cname)
	values('C01',	'数据库'),
			('C02',	'数学'),
			('C03',	'信息系统'),
			('C04',	'操作系统')
			
不指定列
insert into course
	values('C01',	'数据库'),
			('C02',	'数学'),
			('C03',	'信息系统'),
			('C04',	'操作系统')

查询相关操作

SELECT column-list  
FROM table_name  
[WHERE condition]  
[ORDER BY column1, column2, .. columnN] [ASC | DESC];

排序

-- 查询选修了c01课程的学生的学号及其成绩,查询结果按分数降序排列
select sno,degree from sc
where cno = 'c01'
-- desc 降序
-- asc 升序
ORDER BY degree DESC

去重

select distinct sno from sc

Like模糊查询
百分号(%)
下划线(_)

/*百分号表示零个,一个或多个字符。 下划线表示单个数字或字符。 */

-- 查询所有姓“刘”的学生信息。
select * from student
where sname LIKE '刘%'
-- 查询生源地不是山东省的学生信息
select * from student
where  saddress not like '山东%'

分组查询

select cno, count(sno) as '数量' from sc
-- as是指定别名
group by cno

where 同 having 的区别

-- 1.执行顺序
-- where>聚合函数(sum,min,max,avg,count)>having
-- 2.充当作用
-- where在分组之前过滤数据(应为其在分组前执行)
-- having在分组之后过滤数据,且条件中经常包含聚组函数,

-- 查询被两名以上学生选修的课程的课程号
select cno from sc group by cno
having count(cno) >=2

select sum(score) from student  where sex='man' group by name having sum(score)>210

IN 与 = 的区别
相同点:均在WHERE中使用作为筛选条件之一、均是等于的含义
不同点:IN可以规定多个值,等于规定一个值

-- 两个等价表达
select * from Websites where name in ('Google','教程');
select * from Websites where name='Google' or name='教程';

标签:总结,name,第一天,--,char,sql,cno,where,select
From: https://www.cnblogs.com/MR---Zhao/p/16802041.html

相关文章

  • Mysql查询表结构
    平时用的数据库简单操作查看表的结构Desc表名;  查看数据库中的表showtables; 查看数据库建表语句showcreatetable表名  ......
  • 基于SqlSugar的开发框架循序渐进介绍(16)-- 工作流模块的功能介绍
    工作流是集成系统的模块应用,使用权限管理系统的身份认证登录后即可使用。本篇随笔介绍工作流模块的界面功能效果。1、我的审批工作我的审批工作,包括【我发起的】、【我的......
  • 【Vue】悬浮窗和聚焦登录组件经验总结
    前言 本文整理了实现悬浮窗以及聚焦登录组件的功能。 为的是方便大家和自己的学习。 省流:可以只看1.2和2的代码即可1悬浮窗现在各大流行视频网站的平台都在使用这种悬浮......
  • MySQL数据库SQL语法常规操作
    必备sql和表关系及授权graphLR执行1[必备sql和授权]执行2[SQL强化和实践]执行3[索引和函数以及存储过程]执行4[Python操作mysql和应用]执行5[常见SQL语句......
  • Vue面试题35:什么是递归组件?(总结自B站up主‘前端杨村长’视频,仅供自用学习)
    分析递归组件我们用的比较少,但是在Tree、Menu这类组件中会被用到;体验组件通过组件名称引用它自己,这种情况就是递归组件<template><li><div>{{model.......
  • SparkSQL on K8s 在网易传媒的落地实践
    随着云原生技术的发展和成熟,大数据基础设施积极拥抱云原生是业内发展的一大趋势。网易传媒在2021年成功将SparkSQL部署到了K8s集群,并实现与部分在线业务的混合部署,......
  • MySQL 8.0.31并行构建索引特性管窥
    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。GreatSQL是MySQL的国产分支版本,使用上与MySQL一致。本文来源:原创投稿;作者:YeJinrong/叶金荣测......
  • 【MySQL练习】多表查询练习(二)
    查看代码:数据库和表数据创建CREATEDATABASE`wudang`;USE`wudang`;CREATETABLE`t_dept`(`id`INT(11)NOTNULLAUTO_INCREMENT,`deptName`VARCHAR(30)DEFAU......
  • Proe/Creo电子产品主要部位防水结构总结
    首先了解以下什么叫做IP防护等级。IP防护等级是由两个数字所组成,第一个数字表示防尘、防止外物侵入的等级;第二个数字表示防湿气、防水侵入的密闭程度。数字越大,表示其防护......
  • mysql事务隔离级别及MVCC 原理
    一、事务的隔离级别为了保证事务与事务之间的修改操作不会互相影响,innodb希望不同的事务是隔离的执行的,互不干扰。两个并发的事务在执行过程中有读读、读写(一个事务在读......