增删改查

SQL操作

CREATE TABLE

CREATE TABLE用来创建一个表

//创建一个表,表的名称为table_name,该表有三列,列名分别为column_1,column_2,column_3.列中的数据类型分别为整形,文本,整形

 CREATE TABLE table_name (
 column_1 INTEGER, 
 column_2 TEXT, 
 column_3 INTEGER
  );

eg:

 CREATE TABLE table_test (
     id INTEGER, 
     name TEXT, 
     age INTEGER
   );
INSERT INTO

INSERT INTO用于向列中插入值

//分别向列id, name, age中插入 1, 'Justin Bieber', 21

 INSERT INTO table_test (id, name, age) VALUES (1, 'Justin Bieber', 21);

//插入多条数据

1、MySQL数据库:

 INSERT INTO table_test (id, name, age) 
 SELECT 1, 'Justin Bieber', 21 
 UNION SELECT 2, 'Marry', 25 
 UNION SELECT 3, 'JOJO', 23 ;

INSERT DELAYED INTO `table_test ` (`id`, `name`, `age`) VALUES
(1, 'Justin Bieber',21),
(2, 'Marry', 25),
(3, 'JOJO',23);

2、oracle数据库:

-----------第一种插入方式---------------
INSERT INTO table_test (id, name, age) VALUES  (1, 'Justin Bieber',21);
INSERT INTO table_test (id, name, age) VALUES  (2, 'Marry',25);
INSERT INTO table_test (id, name, age) VALUES  (3, 'JOJO',23);

-----------第两种插入方式---------------
INSERT INTO table_test (id, name, age)
SELECT 1, 'Justin Bieber',21 FROM dual UNION ALL 
SELECT 2, 'Marry',25 FROM dual UNION ALL 
SELECT 3, 'JOJO',23 FROM dual;
UPDATE

用于修改表中的数据

//语法

 UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

//修改id=1这一行的age列的数据为22

 UPDATE table_test SET age = 22 WHERE id = 1;
ALTER TABLE

修改表,用于增加,修改,删除列

//ADD COLUMN添加一个列

 ALTER TABLE table_test ADD COLUMN address TEXT;

//DROP COLUMN删除一个列

 ALTER TABLE table_test DROP COLUMN address ;
DELETE

删除表中的行

//IS NULL表示值是NULL或者不存在,删除age列中值不存在的行

 DELETE FROM table_test WHERE age IS NULL;

SQL查询

DISTINCT

过滤重复的数据

 SELECT DISTINCT * FROM table_test ;

 SELECT DISTINCT age FROM table_test ;
WHERE

通过各种条件定位到具体的数据

 操作符    描述

 =  等于
 <>     不等于
 >  大于
 <  小于
 >=     大于等于
 <=     小于等于
 BETWEEN    在某个范围内
 LIKE   搜索某种模式

//统计age大于24的数据

 SELECT * FROM table_test WHERE age > 24;
LIKE

模糊匹配

//_通配一个字符

 SELECT * FROM table_test WHERE name LIKE 'Mar_y';

//%通配任意多个字符

 SELECT * FROM table_test WHERE name LIKE '%Bieber%';
BETWEEN

匹配一个范围

//查到age范围在23到30之间的数据

 SELECT * FROM table_test WHERE age BETWEEN 23 and 30;
AND

逻辑与
//查到age范围在23到30之间的数据

 SELECT * FROM table_test WHERE age >= 23 and age <= 30;
OR

逻辑或
//查到age范围不在在23到30之间的数据

 SELECT * FROM table_test WHERE age <= 23 or age >= 30;
 等同于
 SELECT * FROM table_test WHERE age not BETWEEN 23 and 30;
ORDER BY

//依据某一列进行排序,ASC是顺序排序,DESC是逆序排序。

 SELECT * FROM table_test ORDER BY age ASC;

SQL计算

COUNT()

COUNT()是最快的方式,统计一张表总共的行数。COUNT()函数的参数是一个列的名称,统计整个表所有的行数时,采用通配符*;

//统计整个表的行数

SELECT COUNT(*) FROM table_test ;

//统计age为25的行数

 SELECT COUNT(*) FROM table_test WHERE age= 25;
GROUP BY

GROUP BY <列名> 将一列中相同值的列分成一组

//按照age进行分组,并统计每组元素的个数

 SELECT age, COUNT(*) FROM table_test GROUP BY age;
SUM()

SQL通过SUM()可以很容易统计一列的和

//计算age一列的和

 SELECT SUM(age) FROM table_test ;
MAX()

MAX()函数可以找到一列中的最大值

SELECT MAX(age) FROM table_test ;

MIN()

MIN()函数可以找到一列中最小的值,用法与MAX()相同

AVG()

AVG()函数计算一列的平均值,用法与MAX()相同

ROUND()

设定数值到指定的精度

//设定计算的平均值精度精确到小数点后两位
SELECT ROUND(AVG(age), 2) FROM table_test;

多个表操作

PRIMARY KEY

在使用CREATE TABLE时为id添加PRIMARY KEY,PRIMARY KEY是一张表中每一行独一无二的标识,该表将id作为主键。通过主键将多个表联系起来。

 CREATE TABLE table_test (id INTEGER PRIMARY KEY, name TEXT)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容

  • 个人总结:1.尽量减少sql语句调用的次数,避免在循环语句中执行数据库操作.2.尽量减少多表的联查,用空间换时间,...
    zhangwenqiang阅读 4,605评论 0 1
  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 9,446评论 0 13
  • 经过前期的准备工作,现在就可以正确的开始布局了。这里也将是页面布局开始的地方。 常规的文档流布局 这种是最基础的布...
    loster阅读 518评论 0 0
  • 回想一下当初刚入这行时候的自我感受 在我写这些东西的时候公司马上就要创业1年了,据同事说公司是上年的11.11成立...
    把耳朵叫醒了阅读 207评论 0 0
  • 随想的空伴着风在漂泊,随思的叶游走…… 随写的字里行间淡着丝丝缕缕,笔尖墨迹…… 你的说明,轻轻倾情…… 我的话语...
    雨后MUSIC阅读 246评论 0 0