mysql安装笔记教程(路安笔记01MySQLSQL菜鸟)

MySQL语句
  1. CREATE TABLE table_name(想创建的数据表名字) (column_name, column_type(属性));创建数据表
  2. UPDATE tbl SET title='学习 C ' WHERE id=3;
  3. DELETE FROM name [WHERE Clause]删除就不用*,就是把一行删除
  4. SELECT * from runoob_tbl WHERE runoob_author LIKE '%COM';使用百分号 %字符来表示任意字符,如果没有使用百分号 %, LIKE 子句与等号 = 的效果是一样的

针对力扣一题写了半天,一看答案发现是自己想多了,语句早就写出来了

MySQL延伸

MySQL 安装 | 菜鸟教程

力扣1757

我以为要把Products表输出来,然后表在一开始不知道算不算没有创建出来,于是我就找怎么创建数据表,语句菜鸟上面有的还在CREATE前加mysql>,于是执行就老是报错,忍不住看答案,其实就最后一句就完成了。

想法:因为之前学数据库学的是MySQL,然后力扣说写SQL语句,于是就去菜鸟学SQL,写题发现只能选MySQL语言,当时执行也报错,以为是语言的问题,其实是* FROM(正确写法)位置打错了,MySQL内容那可就多了,当时好像语句也就那样,主要文字一大堆,然后语句咋和SQL一样,感觉新手可以学SQL,简单入门SQL(因为SQL也有高阶内容)再仔细看MySQL,就是我看题解他们答案和MS SQL Server、Oracle咋一样,后面细细比较一下,主要还是题比较简单。

mysql安装笔记教程(路安笔记01MySQLSQL菜鸟)(1)

mysql安装笔记教程(路安笔记01MySQLSQL菜鸟)(2)

对了有人说SQL不能加分号,我选的语言是MySQL,看别人题解也没加,我试试加了也能过,根据我学各种语言来讲,好像都会加分号来着,菜鸟也加了,所以那人应该说错了吧。

对了,力扣好像不区分大小写?不过好像本来就可以小写。但是,from得大写,好吧发现不是需要大写,是我又把from字母写错了。。。

584: select name from customer where referee_id!=2;我觉得这个选择条件就默认只针对数字了所以错,但其实MySQL 使用三值逻辑 —— TRUE, FALSE 和 UNKNOWN,任何与 NULL 值进行的比较都会与第三种值 UNKNOWN 做比较,这个“任何值”包括 NULL 本身!这就是为什么 MySQL 提供 IS NULL 和 IS NOT NULL 两种操作来对 NULL 特殊判断。

因此,在 WHERE 语句中我们需要做一个额外的条件判断 `referee_id IS NULL'。(不要因为其他语言想当然的用==)

183

mysql安装笔记教程(路安笔记01MySQLSQL菜鸟)(3)

难点分析:1.需要从两个表中获取数据,且表中属性不对应,Orders表中CustomerId对应Customers表中Id

2.查询返回的是Customers表中Name属性,但是要给出的是Customers

select customers.name as 'Customers'

from customers

where customers.id not in

(

select customerid from orders

);

  1. use RUNOOB; 命令用于选择数据库。
  2. set names utf8; 命令用于设置使用的字符集。这里应该是相当于初始化有点不确定。
  3. SELECT * FROM Websites; 读取数据表的信息。
  4. SELECT DISTINCT(去除对应属性的重复值,选取唯一值) country(属性值选择,替代*) FROM Websites;
  5. SELECT * FROM Websites WHERE country='CN'(文本字段用单引号,数值不用);从 "Websites" 表中选取国家为 "CN" 的所有网站WHERE 子句中的运算符
  6. SELECT * FROM Websites WHERE alexa > 15 AND (country='CN' OR country='USA');
  7. SELECT * FROM Websites ORDER BY(升序) alexa,sihco(属性) DESC(添加了就是降序);order by A desc,B 这个时候 A 降序,B 升序排列 order by A ,B desc 这个时候 A 升序,B 降序排列即 desc 或者 asc 只对它紧跟着的第一个列名有效,其他不受影响,仍然是默认的升序。且字符也可以升序等排列
  8. INSERT INTO Websites (name, url, alexa, country) VALUES ('百度','https://www.baidu.com/','4','CN');在原表中往后插入新行,或者不插alexa,去掉对应部分显示0
  9. UPDATE Websites SET alexa='5000', country='USA' WHERE name='菜鸟教程';不能省略where语句不然就全部修改了
  10. DELETE FROM Websites WHERE name='Facebook' AND country='USA';去除where就是全部删除
SQL延伸

3:SELECT - 从数据库中提取数据

UPDATE - 更新数据库中的数据

DELETE - 从数据库中删除数据

INSERT INTO - 向数据库中插入新数据

CREATE DATABASE - 创建新数据库

ALTER DATABASE - 修改数据库

CREATE TABLE - 创建新表

ALTER TABLE - 变更(改变)数据库表

DROP TABLE - 删除表

CREATE INDEX - 创建索引(搜索键)

DROP INDEX - 删除索引

5:运算符可以在 WHERE 子句中使用:

运算符

描述

<>

不等于。在 SQL 的一些版本中,该操作符可被写成 !=

BETWEEN

在某个范围内

LIKE

搜索某种模式

IN

指定针对某个列的多个可能值

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页