1.新建一个view

create view view_name as

select * from table_name

where...

2.删除一个view

drop view view_name

3.新增一列

ALTER TABLE table_name
 ADD column_name column_type

4.删除一列: COLUMN 是关键字

ALTER TABLE table_name
 drop COLUMN column_name

5.修改表中某一条记录

UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;

6.添加一条记录

INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);

7.排序

SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;

8.join 的用法(两表根据共同字段返回值)

SELECT Websites.id, Websites.name, access_log.count, access_log.date
FROM Websites
INNER JOIN access_log
ON Websites.id=access_log.site_id;

  • INNER JOIN:如果表中有至少一个匹配,则返回行
  • LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行(以左边的表为主)
  • RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行(以右边的表为主)
  • FULL JOIN:只要其中一个表中存在匹配,则返回行(不管匹配如何,返回所有待定字段和值)

9.创建一个表

CREATE TABLE table_name
(
  column_name1 data_type(size), 约束条件
  column_name2 data_type(size),约束条件
  column_name3 data_type(size),约束条件
  ....
);

约束条件有以下六个:

  • NOT NULL - 指示某列不能存储 NULL 值。
  • UNIQUE - 保证某列的每行必须有唯一的值。
  • PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列(或两个列多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。
  • FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。
  • CHECK - 保证列中的值符合指定的条件。
  • DEFAULT - 规定没有给列赋值时的默认值。

例:

CREATE TABLE Persons
(
  P_Id int NOT NULL UNIQUE, //非空,不重复
  LastName varchar(255) NOT NULL,
  FirstName varchar(255),
  Address varchar(255),
  City varchar(255),
  PRIMARY KEY (P_Id), //设立p_id为主键

  FOREIGN KEY (P_Id) REFERENCES orders(P_Id) //当前表的外键是orders表的主键P_ID

check(P_ID>0)//规定当前表的主键值>0
)

十、group by 的使用

SELECT site_id, SUM(access_log.count) AS nums //对access_log表的count列进行求和,求和的结果命名为nums列
FROM access_log

GROUP BY site_id; //将表的内容按照site_id进行整理

十一、having 的使用

having 可以配合group by一起使用, 可以代替where语句。

SELECT Websites.name, Websites.url, SUM(access_log.count) AS nums FROM (access_log
INNER JOIN Websites
ON access_log.site_id=Websites.id)
GROUP BY Websites.name
HAVING SUM(access_log.count) > 200;

数据库SQL语句学习--view的更多相关文章

  1. SQL语句学习手册实例版

    SQL语句学习手册实例版 表操作 例1  对于表的教学管理数据库中的表 STUDENTS ,可以定义如下: CREATE  TABLE  STUDENTS (SNO      NUMERIC (6, ...

  2. MySQL 数据库SQL语句——高阶版本2

    MySQL 数据库SQL语句--高阶版本2 实验准备 数据库表配置: mysql -uroot -p show databases; create database train_ticket; use ...

  3. 学生选课数据库SQL语句45道练习题整理及mysql常用函数(20161019)

    学生选课数据库SQL语句45道练习题: 一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四 ...

  4. SQL 语句学习

     Sql语句学习 一. select playerId, count(playerId) as num from OperateLog_$i where playerId > 0 and roo ...

  5. MySQL 数据库SQL语句——高阶版本1

    MySQL 数据库SQL语句--高阶版本 实验准备,数据表配置 mysql -uroot -p show databases; create database train_ticket; use tr ...

  6. 数据库SQL之学习SUM总和套用条件CASE WHEN语句

    1.SQL之学习SUM总和套用条件CASE WHEN语句 2.条件语句CASE WHEN 格式已经在图中写的很明白了 -- 查询t_wzw库中所有数据 总和(条件为t_wzw.birthday > ...

  7. 精心整理的SQL语句学习大全

    -语 句 功 能  --数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据-数据 ...

  8. 数据库—SQL语句

    下列语句部分是Mssql语句,不可以在access中使用. SQL分类:   DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)   DML—数据操纵语言(SELECT,DEL ...

  9. SQL语句学习笔记

    从外部EXCEl文件导入sqlserver数据库操作命令 reconfigure reconfigure go select * into abc1_1 from OPENROWSET('MICROS ...

随机推荐

  1. mysql explain知道

     

  2. session超时设置

    session的设置方法有三种: 1.直接在应用服务器中设置 如果是Tomcat,可以在Tomcat目录下conf/web.xml中找到<session-config>元素,tomcat默 ...

  3. [转]Eclipse中的Web项目自动部署到Tomcat

    原文地址:http://www.cnblogs.com/ywl925/p/3815173.html 原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的 ...

  4. 自定义的ViewGroup中添加自定义View 造成的无法显示问题(个人)

    首先说一下我在网上找了很久没有找到说明方法所以我就自己试着写了一下 1.我自定义了一个继承了RelativeLayout的ViewGroup java代码如下: /** * 简单自定义三头像 * @a ...

  5. iOS开发,系统自带的分享简单实现

    由于simulator设置里面没有新浪微博的选项,所以选择了真机调试,成功了.代码不多,包含头文件 没有配置登录信息的话,是没有作用的                                 ...

  6. 【BZOJ 3052】【WC 2013】糖果公园

    对树的dfs序分块,打开了新世界的大门233 第一关键字是l所在的块,第二关键字是r所在的块,第三关键字是时间,分完块后暴力莫队即可 #include<cmath> #include< ...

  7. lucene-查询query->FuzzyQuery相近词语的搜索

    FuzzyQuery是一种模糊查询,它可以简单地识别两个相近的词语.下面以11.10为例进行详细介绍. package ch11; import org.apache.lucene.analysis. ...

  8. HTTP协议学习--- (十一)理解HTTP幂等性

    在httpcomponent 文档中看到如下段落: 1.4.1. HTTP transport safety It is important to understand that the HTTP p ...

  9. iOS黑客技术相关

    在黑客的世界里,没有坚不可破的防护系统,也没有无往不胜.所向披靡的入侵利器,有时候看似简单的问题,破解起来也许花上好几天.好几个月,有时候看似很 low 的工具往往能解决大问题:我们以实现微信自动抢红 ...

  10. OPENGL之定时器

    定时器一般用于控制隔一段时间调用某函数 函数原型glutTimerFunc(unsigned int msecs,void(*func)(int value),int value) 说明:msecs为 ...