语句分类

SQL 命令一般分为三类:DQL、DML、DDL。

一、DDL语句。

1.1建表语句

CREATE TABLE table_name(

col01_name data_type,

col02_name data_type,

);

实例:

student_name varchar(40),
chinese_score int,
math_score int,
test_date date
);
CREATE TABLE

\d  显示表

postgres=# \d score
Table "public.score"
Column | Type | Modifiers
---------------+-----------------------+-----------
student_name | character varying(40) |
chinese_score | integer |
math_score | integer |
test_date | date | 

主键

创建表的时候可以指定主键primary key,标识这一列唯一,不能重复。

postgres=# create table student(
postgres(# no int primary key,
postgres(# student_name varchar(40),
postgres(# age int);
CREATE TABLE

 1.2 删除表

drop table table_name;

二、DML语句。

DML用于插入、更新和删除数据。insert、update、delete。

2.1  插入语句:

postgres=# insert into student(no,age,student_name) values(2,13,'steven');
INSERT 0 1

2.2 更新语句:

postgres=# update student set age = 15;
UPDATE 1

  使用where过滤:

postgres=# update student set age=14 where no = 3;
UPDATE 1

  2.3 删除语句:

postgres=# delete from student where no = 3;
DELETE 1

  2.4.1 查询语句:

postgres=# select no,student_name,age from student;
no | student_name | age
----+--------------+-----
2 | haha | 15
1 | steven | 13
(2 rows)

  2.4.2 过滤查询:

postgres=# select * from student where age > 14;
no | student_name | age
----+--------------+-----
2 | haha | 15
(1 row)

  2.4.3排序

postgres=# select * from student order by age;
no | student_name | age
----+--------------+-----
1 | steven | 13
2 | haha | 15
(2 rows)

  2.4.4倒序

postgres=# select * from student order by no desc;
no | student_name | age
----+--------------+-----
2 | haha | 15
1 | steven | 13
(2 rows)

  2.4.5分组

postgres=# select age,count(*) from student group by age;
age | count
-----+-------
15 | 1
13 | 1
(2 rows)

  2.4.6多表联查

postgres=# create table class(no int primary key,
class_name varchar(40));
CREATE TABLE
postgres=# insert into class values(1,'初二(1)班');
INSERT 0 1
postgres=# insert into class values(2,'初二(2)班');
INSERT 0 1
postgres=# insert into class values(3,'初二(3)班');
INSERT 0 1
postgres=# insert into class values(4,'初二(4)班');
INSERT 0 1
postgres=# select * from class;
no | class_name
----+-------------
1 | 初二(1)班
2 | 初二(2)班
3 | 初二(3)班
4 | 初二(4)班
(4 rows)

  

postgres=# create table student2(no int primary key,
student_name varchar(40),
age int,
class_no int);
CREATE TABLE postgres=# insert into student2 values(1,'a',12,1);
INSERT 0 1
postgres=# insert into student2 values(2,'b',13,1);
INSERT 0 1
postgres=# insert into student2 values(3,'c',15,2);
INSERT 0 1
postgres=# insert into student2 values(4,'d',15,2);
INSERT 0 1
postgres=# insert into student2 values(5,'e',15,3);
INSERT 0 1
postgres=# insert into student2 values(6,'f',15,2);
INSERT 0 1
postgres=#

  

postgres=# select student_name,class_name from student2,class
where student2.class_no = class.no;
student_name | class_name
--------------+-------------
a | 初二(1)班
b | 初二(1)班
c | 初二(2)班
d | 初二(2)班
e | 初二(3)班
f | 初二(2)班
(6 rows)

  

三、其它SQL语句

insert into ....select语句,可以把一个表插入到另外一张表中。

postgres=# create table student_bak(no int primary key,
postgres(# sutdent_name varchar(40),
postgres(# age int,
postgres(# class_no int);
CREATE TABLE
postgres=# insert into student_bak select * from student;
INSERT 0 2
postgres=# select * from student_bak;
no | sutdent_name | age | class_no
----+--------------+-----+----------
2 | haha | 15 |
1 | steven | 13 |
(2 rows)

  

union语句将两个表查询的数据整合在一起

postgres=# select * from student2 where no = 1 union select * from student_bak
where no =2;
no | student_name | age | class_no
----+--------------+-----+----------
1 | a | 12 | 1
2 | haha | 15 |
(2 rows)

  truncate table 清楚表数据

postgres=# truncate table student_bak;

  

SQL 语句语法简介(一)的更多相关文章

  1. SQL语句语法简介

    SQL命令一般分为DQL.DML.DDL几类: DQL:数据查询语句,基本就是SELECT查询命令,用于数据查询 DML:Data Manipulation Language的简称,即数据操纵语言,主 ...

  2. 【知识库】-数据库_MySQL常用SQL语句语法大全示例

    简书作者:seay 文章出处: 关系数据库常用SQL语句语法大全 Learn [已经过测试校验] 一.创建数据库 二.创建表 三.删除表 四.清空表 五.修改表 六.SQL查询语句 七.SQL插入语句 ...

  3. 关系数据库常用SQL语句语法大全

    创建表 语法 CREATE TABLE <表名>(<列名> <数据类型>[列级完整性约束条件] [,<列名> <数据类型>[列级完整性约束条 ...

  4. 基础SQL语句/语法

    SQL是现在进入互联网工作人们的必须技能之一,下面分享自己觉得很nice的SQL基本语句,从网上找了,觉得很不错,就分享给大家!简要介绍基础语句: 1.说明:创建数据库  Create DATABAS ...

  5. mysql数据库之基础SQL语句/语法

    SQL是现在进入互联网工作人们的必须技能之一,下面分享自己觉得很nice的SQL基本语句,从网上找了,觉得很不错,就分享给大家!简要介绍基础语句: 1.说明:创建数据库  Create DATABAS ...

  6. sql语句语法大全

    一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...

  7. sql语句语法

    13.1. 数据定义语句 . ALTER DATABASE语法 . ALTER TABLE语法 . CREATE DATABASE语法 . CREATE INDEX语法 . CREATE TABLE语 ...

  8. 转载-增删改查sql语句语法

    一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> 例:insert into Strdent ...

  9. 简单实用 “易忘” 的SQL 语句语法,新老皆宜

    --创建数据库 create database 数据库名 on primary ( name='数据库名_data',  filename='数据库储存路径', size=数据库初始大小(MB),   ...

随机推荐

  1. (转)手把手图文教你eclipse下如何配置tomcat

    转自:http://jingyan.baidu.com/article/ca2d939dd90183eb6d31ce79.html 很多初学,尤其自学JavaWeb的朋友首次在eclipse下配置to ...

  2. MapGis如何实现WebGIS分布式大数据存储的

    作为解决方案厂商,MapGis是如何实现分布式大数据存储的呢? MapGIS在传统关系型空间数据库引擎MapGIS SDE的基础之上,针对地理大数据的特点,构建了MapGIS DataStore分布式 ...

  3. WebGIS博客文本分析(词频分析)手动扒取 去除格式 词语分割 统计分析

    1.      [置顶](一)开篇—杂谈WebGIS 摘要: 文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.前言 ...

  4. mybatis的update操作的几种动态更新

    mybatis是我们开发者常用的dao框架,亿轻巧灵活为特征,在crud操作中,动态更新是常用的操作.我搜集了两种动态更新的sql写法,以备日后备用! 方法1: update loan_product ...

  5. kepware http接口 java语言开发

    读取某变量的值(OK HTTP OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .u ...

  6. noip第33课作业

    1.    排座椅 [问题描述] 上课的时候总会有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情.不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同 ...

  7. hdu 4941 map的使用

    http://acm.hdu.edu.cn/showproblem.php?pid=4941 给定N,M和K,表示在一个N*M的棋盘上有K个棋子,给出K个棋子的位置和值,然后是Q次操作,对应的是: 1 ...

  8. codeforces 477D

    题意:给定一个长度<=5000的二进制字符串S,以及一个初始为0的n,有一下两种操作: 1. 输出n(n>=1并且为2进制形式输出) 2.n=n+1 每次选择一种操作.. 求:1.有多少方 ...

  9. RxSwift学习笔记1:RxSwift的编程风格

    第一天:简单体验与RxSwift的编程风格 import UIKit//导入Rx相关框架 import RxSwift import RxCocoa struct Music { let name:S ...

  10. hbase首次导入大批次的数据成功!

    本次主要是采用hbase自带的importtsv工具来导入.首先要把数据文件上传到hdfs上,然后导入hbase表格.该导入方式只支持.tsv数据文件的导入. 导入流程: 1.下载数据.我们在本文中将 ...