sql语句学习教程02_sql查询语句_sql语法_sql数据类型

教程发布:风哥 教程分类:MySQL教程 更新日期:2020-03-04 浏览学习:4783

1.数据库表
一个数据库通常包含一个或多个表。每个表有一个名字标识(例如:"fgedu"),表包含带有数据的记录(行)。
以MySQL为列 的 itpuxdb 数据库中创建了 fgedu 表,用于存储网站记录。
我们可以通过以下命令查看 "fgedu" 表的数据:
mysql> use itpuxdb;
Database changed

mysql> set names utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT * FROM fgedu;
+----+--------------+---------------------------+-------+---------+
| id | name           | url                            | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | 风哥教程      | http://www.fgedu.net    | 8888  | CN      |
+----+--------------+---------------------------+-------+---------+
1 rows in set (0.01 sec)
解析
use itpuxdb; 命令用于选择数据库。
set names utf8; 命令用于设置使用的字符集。
SELECT * FROM fgedu; 读取数据表的信息。
上面的表包含1条记录和5个列(id、name、url、alexa 和country)。

重要事项
一定要记住,SQL 对大小写不敏感!

2.SQL 语句后面的分号?
某些数据库系统要求在每条 SQL 命令的末端使用分号。在我们的教程中不使用分号。

分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的语句。

如果您使用的是 MS Access 和 SQL Server 2000,则不必在每条 SQL 语句之后使用分号,不过某些数据库软件要求必须使用分号。

3.SQL DML 和 DDL
可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。
SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。

查询和更新指令构成了 SQL 的 DML 部分:

SELECT - 从数据库表中获取数据
UPDATE - 更新数据库表中的数据
DELETE - 从数据库表中删除数据
INSERT INTO - 向数据库表中插入数据
SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。

SQL 中最重要的 DDL 语句:

CREATE DATABASE - 创建新数据库
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
ALTER TABLE - 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引


4.SQL常用语法
SQL SELECT语句
SELECT column1, column2....columnN
FROM   table_name;

SQL DISTINCT子句
SELECT DISTINCT column1, column2....columnN
FROM   table_name;

SQL WHERE子句
SELECT column1, column2....columnN
FROM   table_name
WHERE  CONDITION;

SQL AND/OR子句
SELECT column1, column2....columnN
FROM   table_name
WHERE  CONDITION-1 {AND|OR} CONDITION-2;

SQL IN子句
SELECT column1, column2....columnN
FROM   table_name
WHERE  column_name IN (val-1, val-2,...val-N);

SQL BETWEEN子句
SELECT column1, column2....columnN
FROM   table_name
WHERE  column_name BETWEEN val-1 AND val-2;

SQL Like子句
SELECT column1, column2....columnN
FROM   table_name
WHERE  column_name LIKE { PATTERN };

SQL ORDER BY子句
SELECT column1, column2....columnN
FROM   table_name
WHERE  CONDITION
ORDER BY column_name {ASC|DESC};

SQL GROUP BY子句
SELECT SUM(column_name)
FROM   table_name
WHERE  CONDITION
GROUP BY column_name;

SQL COUNT子句
SELECT COUNT(column_name)
FROM   table_name
WHERE  CONDITION;

SQL HAVING子句
SELECT SUM(column_name)
FROM   table_name
WHERE  CONDITION
GROUP BY column_name
HAVING (arithematic function condition);

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

SQL DROP TABLE语句
DROP TABLE table_name;

SQL CREATE INDEX语句
CREATE UNIQUE INDEX index_name
ON table_name ( column1, column2,...columnN);

SQL DROP INDEX语句
ALTER TABLE table_name
DROP INDEX index_name;

SQL DESC语句
DESC table_name;

SQL TRUNCATE TABLE语句
TRUNCATE TABLE table_name;

SQL ALTER TABLE语句
ALTER TABLE table_name {ADD|DROP|MODIFY} column_name {data_ype};

SQL ALTER TABLE(rename)语句
ALTER TABLE table_name RENAME TO new_table_name;

SQL INSERT INTO语句
INSERT INTO table_name( column1, column2....columnN)
VALUES ( value1, value2....valueN);

SQL UPDATE语句
UPDATE table_name
SET column1 = value1, column2 = value2....columnN=valueN
[ WHERE  CONDITION ];

SQL DELETE语句
DELETE FROM table_name
WHERE  {CONDITION};

SQL CREATE DATABASE语句
CREATE DATABASE database_name;

SQL DROP DATABASE语句
DROP DATABASE database_name;

SQL USE语句
USE database_name;

SQL COMMIT语句
COMMIT;

SQL ROLLBACK语句
ROLLBACK;

5.数据类型
SQL数据类型是指定任何对象的数据类型的属性。 每列,变量和表达式在SQL中都有相关的数据类型。 在创建表时可以使用这些数据类型。 也可以根据需要为表的列(字段)选择合适的数据类型。在数据库中,表的每列都具有特定的数据类型。 数据类型指定列(字段)可以容纳的数据类型,例如字符串,数值和日期时间值。

MySQL中定义数据字段的类型对你数据库的优化是非常重要的。
MySQL支持多种类型,风哥教程中列表的MYSQL类型大致可以分为三类:数值、日期/时间和字符串(字符)类型。

1)数值类型

MySQL支持所有标准SQL数值数据类型。

这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。

关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。

BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。

作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要的每个整数类型的存储和范围。

sql语句学习教程02_sql查询语句_sql语法_sql数据类型此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“fgedu”,获取验证码。在微信里搜索“风哥数据库运维”或者“公众号:itpux_com,加风哥微信:itpux-com,进群领免费课程”或者微信扫描右侧二维码都可以关注本站微信公众号。

BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。

BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围不同。

网站声明:本文由风哥整理发布,转载请保留此段声明,本站所有内容将不对其使用后果做任何承诺,请读者谨慎使用!
【上一篇】sql语句学习教程03_select_select查询_select语句_sql查询语句
【下一篇】sql语句学习教程01_sql语言基础_SQL简介