我的账户
码尚云教育

云计算企业项目实战营

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

SQL语句中各个概念

[复制链接]
云客 发表于 2020-10-27 04:50:11 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题


  • 数据定义语言(DDL, Data Definition Language)

    • CREATE:这个命令用于创建数据库对象,如数据库、表、索引、视图等。例如,CREATE DATABASE myDatabase;用于创建一个名为myDatabase的数据库,而CREATE TABLE myTable (id INT PRIMARY KEY, name VARCHAR(50));用于创建一个名为myTable的表,包含id和name两个字段。
    • ALTER:这个命令用于修改已存在的数据库对象的结构。例如,ALTER TABLE myTable ADD age INT;用于向myTable表中添加一个名为age的新列。
    • DROP:这个命令用于删除数据库对象。例如,DROP DATABASE myDatabase;用于删除名为myDatabase的数据库,而DROP TABLE myTable;用于删除名为myTable的表。
  • 数据操作语言(DML, Data Manipulation Language)

    • INSERT:这个命令用于向表中插入新的数据记录。例如,INSERT INTO myTable (id, name) VALUES (1, 'John Doe');用于在myTable表中插入一条新记录,id为1,name为'John Doe'。
    • UPDATE:这个命令用于修改表中已存在的数据记录。例如,UPDATE myTable SET name = 'Jane Doe' WHERE id = 1;用于将myTable表中id为1的记录的name字段更新为'Jane Doe'。
    • DELETE:这个命令用于删除表中的数据记录。例如,DELETE FROM myTable WHERE id = 1;用于删除myTable表中id为1的记录。
  • 数据查询语言(DQL, Data Query Language)

    • SELECT:这个命令用于从数据库中检索数据。例如,SELECT * FROM myTable;用于从myTable表中选择所有列的所有记录。
    • FROM:这个子句用于指定要查询的数据来源,即表或视图的名称。例如,在上述SELECT * FROM myTable;语句中,myTable是数据来源。
    • WHERE:这个子句用于设置查询的筛选条件,只有满足条件的记录才会被返回。例如,SELECT * FROM myTable WHERE age > 18;用于从myTable表中选择年龄大于18的所有记录。
  • 数据控制语言(DCL, Data Control Language)

    • GRANT:这个命令用于授予用户对数据库对象的访问权限。例如,GRANT SELECT ON myTable TO 'user1';用于授予用户'user1'对myTable表的查询权限。
    • REVOKE:这个命令用于撤销已经授予的权限。例如,REVOKE SELECT ON myTable FROM 'user1';用于撤销用户'user1'对myTable表的查询权限。
  • 事务控制

    • BEGIN TRANSACTION、COMMIT 和 ROLLBACK:这些命令用于管理数据库事务,确保数据的一致性和完整性。在一个事务中,可以执行多个DML操作,然后通过COMMIT命令提交更改,或者通过ROLLBACK命令回滚更改以恢复到事务开始前的状态。
  • 其他命令

    • JOIN:这个命令用于合并来自两个或更多表的数据行,基于它们之间的相关性。例如,SELECT * FROM table1 JOIN table2 ON table1.id = table2.table1_id;用于根据id字段将table1和table2表中的相关记录连接起来。
    • GROUP BY 和 HAVING:这两个子句用于对结果集进行分组和聚合,并设置分组后的筛选条件。例如,SELECT COUNT(*) FROM myTable GROUP BY age HAVING COUNT(*) > 10;用于计算myTable表中每个年龄段的人数,并只显示人数大于10的年龄段。
    • ORDER BY:这个子句用于对结果集进行排序。例如,SELECT * FROM myTable ORDER BY name DESC;用于按照name字段降序排列myTable表中的记录。
    • INDEX:这个命令用于创建和管理索引,提高查询性能。例如,CREATE INDEX idx_name ON myTable (name);用于在myTable表的name字段上创建一个索引,以加速基于name字段的查询。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注我们
码尚云云计算培训

客服电话:18710061913

周一至周日: 7:00-24:00

码尚云教育( 陕ICP备2023009934号-2 )

Powered by Discuz! X3.4© 2016-2023 Comsenz Inc.