常用 SQL介绍
2016-06-04 18:22
267 查看
创建表
/* 创建数据表 CREATE TABLE '表名' ( '字段名' 类型(INTEGER, REAL, TEXT, BLOB) NOT NULL 不允许为空 PRIMARY KEY 主键 AUTOINCREMENT 自增长, '字段名2' 类型, ... ) 注意:在开发中,如果是从 Navicat 粘贴的 SQL,需要自己添加一个指令 IF NOT EXISTS 加在表名前,如果数据表已经存在,就什么也不做 */ CREATE TABLE IF NOT EXISTS "T_Person" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "name" TEXT, "age" INTEGER, "heigth" REAL ) /* 简单约束 */ CREATE TABLE IF NOT EXISTS t_student ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER ); CREATE TABLE IF NOT EXISTS t_student ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT UNIQUE, age INTEGER ); /* 添加主键 */ CREATE TABLE IF NOT EXISTS t_student ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, score REAL ); /* 添加主键 */ CREATE TABLE IF NOT EXISTS t_student ( id INTEGER, name TEXT, age INTEGER, score REAL, PRIMARY KEY(id) );
插入
INSERT INTO t_student (age, score, name) VALUES ('28', 100, 'zhangsan'); INSERT INTO t_student (name, age) VALUES ('lisi', '28'); INSERT INTO t_student (score) VALUES (100);
修改
UPDATE t_student SET name = 'MM' WHERE age = 10; UPDATE t_student SET name = 'WW' WHERE age is 7; UPDATE t_student SET name = 'XXOO' WHERE age < 20; UPDATE t_student SET name = 'NNMM' WHERE age < 50 and score > 10; /*更新记录的name*/ UPDATE t_student SET name = 'zhangsan';
删除
DELETE FROM t_student; DELETE FROM t_student WHERE age < 50;
查询
/* 分页 */ SELECT * FROM t_student ORDER BY id ASC LIMIT 30, 10; /* 排序 */ SELECT * FROM t_student WHERE score > 50 ORDER BY age DESC; SELECT * FROM t_student WHERE score < 50 ORDER BY age ASC , score DESC; /* 计量 */ SELECT COUNT(*) FROM t_student WHERE age > 50; /* 别名 */ SELECT name as myName, age as myAge, score as myScore FROM t_student; SELECT name myName, age myAge, score myScore FROM t_student; SELECT s.name myName, s.age myAge, s.score myScore FROM t_student s WHERE s.age > 50; /* 查询 */ SELECT name, age, score FROM t_student; SELECT * FROM t_student;
删除表
/*删除表*/ DROP TABLE IF EXISTS t_student;
相关文章推荐
- MySQL修改编码设置及乱码问题
- 缓存与数据库一致性保证
- sqlyog的几个实用技巧:
- mysql最大连接数试验
- Mysql 分区和分表
- mysql:The package 'mysql' can be found in following packages
- SQL之EXPLAIN语法
- sparkstreaming实时统计并且存储到mysql数据库中
- mysql设置批量更新
- [MySQL] AUTO_INCREMENT lock Handing in InnoDB
- 安装zip格式mysql
- SQLite数据库学习小结——native层实现
- MySQL Delete,Update连表(left join)删除,更新语法
- 学习日志————MySQL练习
- 学习日志————关于MySQL中文乱码
- 从数据库读取日期型数据的错误记录:argument type mismatch
- Oracle数据库安装完成后,点击sqlplus.exe或者客户端PLSQL Developer,总是显示无法登录解决方法
- MFC使用ADO连接SQL Server2012
- MySQL使用索引的场景及真正利用索引的SQL类型
- Redis整合Spring结合使用缓存实例