网站Y分钟学会X语言上展示了多种语言的基础语法,其他很多语言都有中文版本了,但SQL没有。于是我简单翻译一下。
-- 注释以 -- 开始-- 每条命令以;结束-- SQL并不区分关键字的大小写.为了更容易把关键字与数据库、表、字段名区分,-- 示例里采用了关键字大写的惯例-- 创建与删除数据库. 数据库名与表名区分大小写CREATE DATABASE someDatabase;DROP DATABASE someDatabase;-- 列出所有可用的数据库SHOW DATABASES;-- 使用某个存在的数据库 USE employees;-- 从当前数据库的departments表查出所有的记录,每条记录包含了所有的字段,-- 输出默认会在屏幕上滚动展示.SELECT * FROM departments;-- 从departments表查出所有的记录,但只查询dept_no、dept_name字段.-- 可以跨行拆分命令.SELECT dept_no, dept_name FROM departments;-- 从departments表查出包含所有的字段的记录,但只取5行SELECT * FROM departments LIMIT 5;-- 从departments表查出值里包含了'en'的dept_name字段SELECT dept_name FROM departments WHERE dept_name LIKE '%en%';-- 从departments表查出以S开头、后续长度为4作为dept_name字段值的记录SELECT * FROM departments WHERE dept_name LIKE 'S____';-- 从titles表查出title字段去重后都有哪些值SELECT DISTINCT title FROM titles;-- 同上,但是对title字段的值进行排序(区分大小写).SELECT DISTINCT title FROM titles ORDER BY title;-- 统计departments表里有多少条记录.SELECT COUNT(*) FROM departments;-- 统计departments表里有多少条记录的ept_name字段值里包含了enSELECT COUNT(*) FROM departments WHERE dept_name LIKE '%en%';-- 从tiltes表里查出某个job的title、开始日期与结束日期(只查询10条记录).-- 根据job所属的employee编号从employee表里关联出所属employee的first_name、last_name.SELECT employees.first_name, employees.last_name, titles.title, titles.from_date, titles.to_dateFROM titles INNER JOIN employees ON employees.emp_no = titles.emp_no LIMIT 10; -- 列出所有数据库里的所有表.-- 各数据库通常会对此提供特有的快捷命令.SELECT * FROM INFORMATION_SCHEMA.TABLESWHERE TABLE_TYPE='BASE TABLE';-- 在当前使用的数据库里,创建一张名为tablename1的表.-- 除了语句里的两个字段使用到的数据类型,还有很多其他的可选项可以用来定义字段.CREATE TABLE tablename1 (fname VARCHAR(20), lname VARCHAR(20));-- 向tablename1中插入一行数据,-- 这条语句假设插入的值顺序与列字段顺序一致.INSERT INTO tablename1 VALUES('Richard','Mutt');-- 找出tablename1表里lname字段的值为Mutt的记录,将fname字段的值更新为John.UPDATE tablename1 SET fname='John' WHERE lname='Mutt';-- 找出tablename1里lname字段值以M开头的记录删除DELETE FROM tablename1 WHERE lname like 'M%';-- 从tablename1表里删除所有数据DELETE FROM tablename1;-- 删除tablename1整表DROP TABLE tablename1;