`

SQL常用命令集1

阅读更多

 最近在学习数据库理论,顺便把SQL学习一下,下面列出常用的SQL命令 (全部在MySQL上测试通过)。

 

1.  创建表 

CREATE TABLE Student (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20), Ssex CHAR(2), Sage INT, Sdept CHAR(15));
CREATE TABLE course(Cno CHAR(5) NOT NULL UNIQUE, Cname CHAR(30), Cpno CHAR(5), Ccredit SMALLINT);
CREATE TABLE SC(Sno char(5) NOT NULL, Cno char(5) NOT NULL, Grade SMALLINT NOT NULL);

  

 

1.5 增加外键

mysql> ALTER TABLE course ADD CONSTRAINT fk_pno
    -> FOREIGN KEY (Cpno)
    -> REFERENCES course(Cno);

mysql> ALTER TABLE sc ADD CONSTRAINT fk_sno
    -> FOREIGN KEY(Sno)
    -> REFERENCES student(Sno);

mysql> ALTER TABLE sc ADD CONSTRAINT fk_cno
    -> FOREIGN KEY(Cno)
    -> REFERENCES Course(Cno);

 

2.  改变表 

ALTER TABLE Student ADD Scome DATE; 
ALTER TABLE Student MODIFY Sage SMALLINT;

  

3. 删除表

DROP TABLE Student

 

4. 插入信息

INSERT INTO Student VALUES ("95001", "李勇", "男", 20, "CS");
INSERT INTO Student VALUES ("95002", "刘晨", "女", 19, "IS");
INSERT INTO Student VALUES ("95003", "王名", "女", 18, "MA");
INSERT INTO Student VALUES ("95004", "张立", "男", 19, "IS");

INSERT INTO course VALUES ("6", "数据处理", NULL, 2);
INSERT INTO courses VALUES ("2", "数学", NULL, 2);
INSERT INTO course VALUES ("7", "PASCAL语言", "6", 4);
INSERT INTO course VALUES ("4", "操作系统", "6", 3);
INSERT INTO course VALUES ("5", "数据结构", "7", 3);
INSERT INTO course VALUES ("1", "数据库", "5", 4);
INSERT INTO course VALUES ("3", "信息系统", "1", 4);

INSERT INTO sc VALUES("95001", "1", 92);
INSERT INTO sc VALUES("95001", "2", 85);
INSERT INTO sc VALUES("95001", "3", 88);
INSERT INTO sc VALUES("95002", "2", 90);
INSERT INTO sc VALUES("95002", "3", 80);

  

5. 建立索引

CREATE UNIQUE INDEX Stusno ON Student(Sno);
CREATE UNIQUE INDEX Coucno ON course(Cno);
CREATE UNIQUE INDEX SCno ON SC(Sno ASC, Cno DESC);

  

6. 删除索引

DROP INDEX Stusno on Student;

  

7. 查询

 7.1 单表查询

  7.1.1 对列

select Sno, Sname from student;
select Sno, 2009-Sage from student;
select * from student;
select Sname NAME, 'Year of Birth:' BIRTH, 2009-Sage BIRTHDAY, LOWER(Sdept) DEPARTMENT from student;

  7.1.2 对行

select Sname from student where Sdept='CS';
select Sname, Sage from student where Sage<20;
select * from SC where grade>85;
select Sname, Sdept, Sage from student where Sage between 20 and 23;
select Sname, Ssex from student where Sdept not in ('CS', 'MA');
select * from student where Sname like '刘%';
select * from course where Cpno is NULL;
select Sname, Ssex from student where Sdept='IS' and Sage=19;

  7.1.3 排序

 select * from student Order by Sdept, Sage DESC;

  7.1.4 使用函数

 select COUNT(*) from student;
 select COUNT(DISTINCT Sno) from SC;
 select AVG(GRADE) from SC where Cno='1';
 select MAX(GRADE) from SC where Cno='2';

   7.1.5 对查询结果分组

 select Cno, COUNT(Sno) from SC Group by Cno;
 select Cno, COUNT(Sno) from SC Group by Cno having COUNT(*) <2;   

 

   7.2 连接查询

   7.2.1 等值非等值查询

select student.*, SC.* from student, sc where student.Sno=sc.Sno;

   7.2.2 自身连接

select first.Cno, Second.Cpno from course first, course second where first.Cpno=second.Cno and second.Cpno is not null;

   7.2.3 外连接

select Student.Sno, Sname, Ssex, Sage, Sdept, Cno, Grade from Student left join sc on sc.Sno=student.Sno;

 

    7.3 复合条件连接

select Student.Sno, Sname,Cname, Grade from student, course, sc where sc.Sno=Student.Sno AND sc.Cno=Course.Cno;

 

 

 

 

 

分享到:
评论

相关推荐

    sql 2000 常用命令集

    sql 2000 常用命令集,T-sql语言 常用记录集

    SQL常用命令使用方法.zip

    SQL常用命令使用方法

    oracle sql常用命令集及范例

    Oracle中SQL常用命令经典集,命令格式及相应的范例,理论与实际相结合才是捷径……

    SQL命令使用集合

    SQL命令是用集合,常用的sql命令使用,举例说明。word文档格式。

    SQL数据库常用命令速查手册.docx

    面试、笔试、考试,常用SQL语句速查手册,及其常用增、删、改、查命令用法、语法合集。快速复习SQL语言参考资料。

    MySql 常用命令集

    MySql 常用命令集,想要学习了解mysql就好好看看,绝对有帮助,呵呵

    MySQL常用基本命令集

    收集了大量常用的基本SQL操作命令集,轻松学会Mysql的基本操作.

    DB2常用命令,命令集

    DB2常用命令 db2level 显示db2的版本号 显示SQL出错信息 db2 "? sql6031" db2mtrk 管理DAS 产生:root运行-dascrt -u dasuser1 删除:root运行-dasdrop 启动:dasusr1运行-db2admin start 停止:dasusr1运行...

    SQL命令集对初学者和老用户都有帮助

    这个 SQL 教材网站列出常用的 SQL 指令。这个网站包含以下几个部分: • - SQL 指令: SQL 如何被用来储存、读取、以及处理数据库之中的资料。 • - 表格处理: SQL 如何被用来处理数据库中的表格。 • - SQL语法: ...

    最全的oracle常用命令大全.txt

    ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle&gt;svrmgrl SVRMGR&gt;connect internal SVRMGR&gt;startup ...

    MYSQL常用命令大全

    MYSQL常用命令 1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 &gt; 导出的文件名(数据库默认编码是latin1) mysqldump -u wcnc -p smgp_apps_wcnc &gt; wcnc.sql 2.导出一个表 ...

    SQL命令合计(含例子)pdf

    SQL命令常用全集,配以简单示例讲解。增加SQL应用。

    ADO助手V1.20---一个获取ADO连接字符串,测试SQL命令的辅助软件

    ADO助手---一个获取ADO连接字符串,测试SQL命令的辅助软件 2010-09-06 +初始版本发布 ADO助手---一个获取ADO连接字符串,测试SQL命令的辅助软件 2010-09-06 +初始版本发布 2011-11-09 -修复有时候用DataGrid...

    orcale常用命令

    列出全部SQL命令和SQL*Plus命令 SQL&gt;help 列出某个特定的命令的信息 SQL&gt;help 命令名 c、显示表结构命令DESCRIBE SQL&gt;DESC 表名 d、SQL*Plus中的编辑命令 显示SQL缓冲区命令 SQL&gt;L 修改SQL命令 首先要将待改正行...

    Oracle DBA 常用的一些SQL语句(50个)

    用户命令查询.sql 用户进程查询.sql 监控数据库性能的SQL.sql 看user_job.sql 索引表清除sql生成.sql 索引表空间使用情况查询.sql 索引表空间整理.sql 统计.sql 获取数据库版本信息.sql 表空间使用情况.txt 表空间...

    ORACEL数据库常用命令(有详细解释)

    3. 使用SQL*PLUS(1) SQL&gt; desc table; 显示表结构 SQL&gt; select * from tab; 查看用户下所有的表 SQL&gt; set pause on; 可以使大量结果集在用户按“Enter”(回车)后翻页 SQL&gt; set pagesize 100; 设定SQL语句返回...

    WEB编程开发常用的代码 .txt.zip_UID IP_WEB编程开发常用的代码_open

    asp连接数据库 2. ASP与SQL数据库连接: dim conn set conn=server.createobject(&quot;ADODB.connection&quot;) con.open &quot;PROVIDER=SQLOLEDB;DATA SOURCE=SQL服务器名称或IP地址;...SQL常用命令使用方法:

    常用Windows管理命令

    cliconfg SQL SERVER 客户端网络实用程序 Clipbrd 剪贴板查看器 cmd.exe CMD命令提示符(键入exit退出) compmgmt.msc 计算机管理 conf 启动netmeeting dcomcnfg 打开系统组件服务 ddeshare 打开DDE共享设置 ...

    ADO助手V1.10---一个获取ADO连接字符串,测试SQL命令的辅助软件

    ADO助手---一个获取ADO连接字符串,测试SQL命令的辅助软件 2010-09-06 +初始版本发布 2011-11-09 -修复有时候用DataGrid显示报错“The rowset is not bookmarkable.” +增加根据SQL生产MFC数据库类的功能 +增加导入...

Global site tag (gtag.js) - Google Analytics