数据库基础教程(一)

  • 1    SQL SELECT 语句
  • 2    SQL SELECT DISTINCT 语句
  • 3    SQL WHERE 子句
  • 4    SQL AND & OR 运算符
  • 5    SQL ORDER BY 关键字
  • 6    SQL INSERT INTO 语句
  • 7    SQL UPDATE 语句
  • 8    SQL DELETE 语句

 

 1.SELECT

 #语法:SQL SELECT 
/**
SELECT column_name,column_name
FROM table_name;

SELECT * FROM table_name;
**/


#操作

-- select version(), @@sql_mode;
-- SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
-- SELECT name,country FROM Websites;     选择整个表


/**
CREATE TABLE school SELECT name,country FROM Websites;   选择表中两列,创建新表school

-- SELECT * FROM school;  查看新表school
**/

2.SELECT DISTINCT 

#语法:SQL SELECT DISTINCT,用于返回唯一不同的值。

-- SELECT DISTINCT column_name FROM table_name;

#操作

-- SELECT DISTINCT country FROM Websites;

3.WHERE 

#语法:WHERE,用于提取那些满足指定条件的记录。

/**
SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;
**/

#操作(Where子句功能很强大,可以涉及到运算符、正则表达式

-- SELECT * FROM Websites WHERE country='CN';   字符串有单引号或者双引号
-- SELECT * FROM Websites WHERE id=1;    数值没有单引号

4.AND & OR 运算符 

#语法:AND & OR 运算符用于基于一个以上的条件对记录进行过滤

#AND 运算符实例
-- SELECT * FROM Websites WHERE country='CN' AND alexa > 50;


#OR 运算符实例

-- SELECT * FROM Websites WHERE country='USA' OR country='CN';

#结合 AND & OR

-- SELECT * FROM Websites WHERE alexa > 15 AND (country='CN' OR country='USA');

 5.ORDER BY

#语法:1.ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。
#2.ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,您可以使用 DESC 关键字。

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

#ORDER BY 实例
-- SELECT * FROM Websites ORDER BY alexa;

#ORDER BY DESC 实例(降序)
-- SELECT * FROM Websites ORDER BY alexa DESC;

#ORDER BY 多列(先按country,然后按alexa),默认升序排列
-- SELECT * FROM Websites ORDER BY country,alexa; 

6. INSERT INTO

#语法:INSERT INTO 语句用于向表中插入新记录。

/**
INSERT INTO 语句可以有两种编写形式。

第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:

INSERT INTO table_name
VALUES (value1,value2,value3,...);
第二种形式需要指定列名及被插入的值:

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

#INSERT INTO 实例
/**
select version(), @@sql_mode;
SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
INSERT INTO Websites (name, url, alexa, country) VALUES ('百度','https://www.baidu.com/','4','CN');
**/

#在指定的列插入数据(将插入一个新行,但是只在 "name"、"url" 和 "country" 列插入数据,id 字段会自动更新)
-- INSERT INTO Websites (name, url, country)
-- VALUES ('stackoverflow', 'http://stackoverflow.com/', 'IND');

7.UPDATE  

#语法:UPDATE 语句用于更新表中已存在的记录。

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


-- 请注意 SQL UPDATE 语句中的 WHERE 子句!
-- HERE 子句规定哪条记录或者哪些记录需要更新。如果您省略了 WHERE 子句,所有的记录都将被更新!

#UPDATE 实例("菜鸟教程" 的 alexa 排名更新为 5000,country 改为 USA)
-- select version(), @@sql_mode;
-- SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
-- 
-- UPDATE Websites 
-- SET alexa='5000', country='USA' 
-- WHERE name='菜鸟教程';


#Update 警告!
-- 在更新记录时要格外小心!在上面的实例中,如果我们省略了 WHERE 子句,如下所示:
-- 
-- UPDATE Websites
-- SET alexa='5000', country='USA'
-- 执行以上代码会将 Websites 表中所有数据的 alexa 改为 5000,country 改为 USA。
-- 
-- 执行没有 WHERE 子句的 UPDATE 要慎重,再慎重。

-- SELECT * FROM Websites;

8. DELETE

#语法:DELETE 语句,用于删除表中的行。

# SQL DELETE 语法
-- DELETE FROM table_name
-- WHERE some_column=some_value;

-- 请注意 SQL DELETE 语句中的 WHERE 子句!
-- WHERE 子句规定哪条记录或者哪些记录需要删除。如果您省略了 WHERE 子句,所有的记录都将被删除!

# SQL DELETE 实例
-- select version(), @@sql_mode;
-- SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
-- DELETE FROM Websites
-- WHERE name='百度' AND country='CN';
-- SELECT * FROM Websites;


# 删除所有数据
-- 您可以在不删除表的情况下,删除表中所有的行。这意味着表结构、属性、索引将保持不变:
-- DELETE FROM table_name;
-- 或
-- DELETE * FROM table_name;
-- 注释:在删除记录时要格外小心!因为您不能重来!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值