SQL语句的编写

##创建用户-建表建库

#创建一个用户名为 'feng',允许从任何主机 '%' 连接,并使用密码 'sc123456' 进行身份验证的用户。

root@TENNIS 16:33  scmysql>create user 'feng'@'%' identified by 'sc123456';

Query OK, 0 rows affected (0.04 sec)

#创建一个名为feng的数据库

root@TENNIS 17:11  scmysql>create database feng;

Query OK, 1 row affected (0.00 sec)

#给feng 这个用户授予所有权限,赋予对名为 'feng' 的数据库中所有表的 SELECT、INSERT、UPDATE、DELETE 等权限

root@TENNIS 17:11  scmysql>grant all on feng.* to 'feng'@'%';

Query OK, 0 rows affected (0.00 sec)

#使用feng这个数据库

root@TENNIS 17:17  scmysql>use feng

Database changed

root@feng 17:18  scmysql>create table t1(id int primary key,name varchar(20) not null);

Query OK, 0 rows affected (0.25 sec)

## set 修改密码

  1. root@(none) 09:38  mysql>create user  'liangliang'@'%'  identified by 'Sanchuang123#';

alter user 'root'@'localhost' identified by  'Sanchuang123#';

flush privileges; 刷新权限(会加载原来没有加载的权限表--》用户名和密码所在的表user等)

mysql> set password for 'root'@'localhost' = 'Sanchuang1234#';    --》修改密码,指定用户名为root@localhost

Query OK, 0 rows affected (0.00 sec)

set password for ‘root’@’localhost’ = ‘Sanchuang1234#’

#create table创建表格

##未指定数据库

root@liangliang 20:52  mysql>create table ejiao(id int,name varchr(10));

##指定数据库,该表就会存放到xieshan这个数据库中

root@liangliang 20:59  mysql>create table xieshan.ejiao(id int,naame varchar(10));

    not null  表示不能为空,这个字段

    primary key 表示这个字段为主键,这个字段里的数据不能重复

root@xieshan 15:23  scmysql>create table  wang(

    -> id int not null primary key,

    -> name varchar(20) not null,

    -> sex char(1) )

    -> ;

    primary 主要的  

    primary school  小学

##grant授权用户

root@mysql 10:12  mysql>grant all on *.* to 'liangliang'@'%';

Query OK, 0 rows affected (0.01 sec)

root@mysql 10:13  mysql>

##修改密码identified-刷新权限flush

alter user 'root'@'localhost' identified by  'Sanchuang1234#';

##刷新权限,会加载原来没有加载的权限表

flush privileges

##create databases创建数据库

root@(none) 14:43  scmysql>create database  aojiao;

Query OK, 1 row affected (0.00 sec)

##首尾tables-展示表格

liangliang@(none) 10:14  scmysql>show processlist;

liangliang@(none) 10:15  scmysql>alter user  'liangliang@'%' identified WITH mysql_native_password   by 'Sanchuang123#';

liangliang@(none) 10:15  scmysql>create user  'liangliang3'@'%' identified WITH mysql_native_password   by 'Sanchuang123#';

root@hunan 20:22  mysql>show create table tanjiani;

#desc-查看表里面的结构

root@liangliang 20:54  mysql>desc ejiao;

#rename -to 修改表名

RENAME TABLE old_table_name TO new_table_name;

#changed-修改列名

ALTER TABLE table_name CHANGE old_column_name new_column_name datatype;

#modify-修改列的类型

ALTER TABLE table_name MODIFY column_name new_datatype;

#if not exist 的使用

create table if not exists  xieshan.ejiao1 (ID int ,NAME varchar(20));

#warning的使用

root@liangliang 21:12  mysql>show warnings;

##展示效果

+-------+------+------------------------------+

| Level | Code | Message                      |

+-------+------+------------------------------+

| Error | 1050 | Table 'ejiao' already exists |

+-------+------+------------------------------+

1 row in set (0.00 sec)

##改密码:配置文件/etc/my.cnf

三个进程对应一个

[mysqld_safe]

[client]

socket=/data/mysql/mysql.sock

[mysqld]

socket=/data/mysql/mysql.sock

port = 3306

open_files_limit = 8192

innodb_buffer_pool_size = 512M

character-set-server=utf8

#skip-grant-tables#跳过密码认证

[mysql]

auto-rehash

prompt=\u@\d \R:\m  mysql>  ##类似linux的第一提示符

#大小写的区分

关键字: MySQL里的命令

关键字不区别大小写

库名和表名区分大小写

##常见的mysql语句

#DML数据操作语言Manipulation

##insert的使用

root@xieshan 21:26  mysql>insert into ejiao1(id,name) value(2,'wanngshuai');

Query OK, 1 row affected (0.00 sec)

##insert 插入多个数据

INSERT INTO grades (NAME,SUBJECT,score)

VALUES('linlin','数学',100),('linlin','语文',100)

##select

##update 更新插入值的内容

#改列名UPDATE table_name SET column_name = new_value WHERE condition;

#改属性值UPDATE users SET age = 25 WHERE name = 'Alice';

#如果update 没有where 条件语句那么他就会修改这个字段里面的所有行

#举例

UPDATE grades

SET score = 100

WHERE NAME='shanshan' AND SUBJECT ='数学'

(默认执行顺序都是,先查询再删除)

##replace

替代已有的行

REPLACE语句是INSERT语句的一个变种。当添加新行时,如果主键值重复,那么就覆盖表中已有的行。如果没有主键值重复,则插入该行

语法:

REPLACE [INTO] table_name [(col_name,...)]

    VALUES (expr,...),(...),...

或者

REPLACE [INTO] tbl_name [(col_name,...)]

     SELECT ...

##help

##delete

一行一行的删除

可以恢复

产生了二进制日志

小表里面的删除速度更快

##truncate

直接删除,不产生二进制日志文件,不能恢复

如果是数据库很大的文件的话,truncate 速度比delete更快,删除表空间的文件 类似于(.db)

#DQL

create#

创建

alter#

修改

drop#

删除

#select的使用

*是表示任意字段

root@xieshan 21:26  mysql>select * from xieshan.ejiao1;

+------+-----------+

| id   | name      |

+------+-----------+

|    1 | hepang    |

|    2 | wangshuai |

+------+-----------+

#仅选择一个id

root@xieshan 21:33  mysql>select id from ejiao1;

+------+

| id   |

+------+

|    1 |

|    2 |

+------+

2 rows in set (0.00 sec)

#DDL数据定义语句

##drop

删除表

root@xieshan 16:00  scmysql>drop table chenyulin;

Query OK, 0 rows affected (0.01 sec)

##表里面的删行

alter table t7 drop column column-name

删除库

root@xieshan 16:00  scmysql>drop database AOJIAO;

##create

root@xieshan 16:38  scmysql>create table t3(id tinyint unsigned);

`

##alter

root@xieshan 16:17  scmysql>alter table t1 change name  username varchar(20);

#删除一行

alter table t7 drop column column-name

#增加一行

alter table t7 add column column_name

#改表名

root@hunan 19:15  mysql>alter table city_name  rename to ct;

#change

修改列的名称和数据类型

#modified

修改列的数据类型

#DCL数据控制语句

  1. grant

授权用户

grant  all(权限名)  on *.*(表名)  to 'shanshan'@'%';(用户名@主机号)

With GRANT option

这个语句意味着你可以授权给其他的人,人事任命权

  1. revoke

##help 的使用

help create table

查询create table命令的使用手册

root@xieshan 15:12  scmysql>help  create table  

Name: 'CREATE TABLE'

Description:

Syntax:

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name

    (create_definition,...)

    [table_options]

    [partition_options]

root@xieshan 15:15  scmysql>show create table ejiao;

+-------+----------------------------------------------------------------------------------------------------------------------------+

| Table | Create Table                                                                                                               |

+-------+----------------------------------------------------------------------------------------------------------------------------+

| ejiao | CREATE TABLE `ejiao` (

  `id` int(11) DEFAULT NULL,

  `name` varchar(20) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8 |

+-------+----------------------------------------------------------------------------------------------------------------------------+

1 row in set (0.00 sec)

Query OK, 0 rows affected (0.04 sec)

MySQL有哪些数据类型

1.数值

1.1 整数 int

1.2 浮点型  float(不是很精确,四舍五入)

root@xieshan 13:16  mysql>create table salary2(id int(5),name varchar(20),salary floaat(10,2));

1.3 定点型 decimal(十进制,可以指定小数点精度,十分精确)

create table salary(id int(5),name varchar(20),salary decimal(10,2));

##前面的10表示整数位和小数位的总和,2表示小数位

insert into salary(id,name,salary) values (1,'rose',19992.22);

##查看表里面的内容

root@xieshan 13:15  mysql>select * from salary;

+------+------+----------+

| id   | name | salary   |

+------+------+----------+

|    1 | rose | 19992.22 |

+------+------+----------+

1 row in set (0.00 sec)

#自增--》值适用于整型  auto_increment 自增,初始值为1

root@hunan 18:20  mysql>create table city_name(id int unsigned auto_increment primary key);

Query OK, 0 rows affected (0.01 sec)

Unsigned 无符号数

 40

 50

 100

signed 有符号数

+100

-50

2.字符串

varchar##可变长字符串

char##定长字符串

3.日期和时间

##date  日期类型 --》年月日

表示时间日期的几种类型

4.enum 枚举类型

###作业

作业:

0.建立库 hunan:

1.表名:sc_student

2.字段: 编号,名字、性别、年龄、专业,电话号码,地址,岗位,城市,公司的名字,出生日期,工资

    3.思考:哪些字段设置成什么类型,必须有主键,具体哪个字段做主键,自己定义

  4.往表里插入几行数据,

  5.查询显示一下数据,

  6.显示一下表的结构,字符集,存储引擎等信息

  7.思考一条记录会消耗多少存储空间?

root@xieshan 13:24  mysql>create database hunan;

root@xieshan 13:34  mysql>use hunan;

root@hunan 13:39  mysql>create  table sc_student

    -> (id int,

    -> name varchar(20),

    -> age varchar(20),

    -> sex char(1),

    -> major varchar(20),

    -> phone varchar(14),

    -> address varchar(30),

    -> city varchar(20),

    -> work varchar(20),

    -> company varchar(10),

    -> birthday int(15),

    ->  salary decimal(10,2));

root@hunan 13:44  mysql>desc sc_student;

root@hunan 14:00  mysql>insert into sc_student(id,name,age,sex,major,phone,address,city,work,company,birthday, salary) values(10086,'wangyalin','21','m','zhineng','17373314883','hunanzhuzhouyouxian','shenzheng','SRE','tencent',200030106,18000.99);

#显示所有表中数据

root@hunan 14:08  mysql>select * from sc_student;

+--------+-----------+------+------+---------+-------------+----------------------+-----------+------+---------+-----------+----------+

| id     | name      | age  | sex  | major   | phone       | address              | city      | work | company | birthday  | salary   |

+--------+-----------+------+------+---------+-------------+----------------------+-----------+------+---------+-----------+----------+

|  10086 | wangyalin | 21   | m    | zhineng | 17373314883 | hunanzhuzhouyouxian  | shenzheng | SRE  | tencent |  20030106 | 18000.99 |

|  10086 | guanxuye  | 20   | m    | zhineng | 17329912222 | hunanchangdeshjimeng | changsha  | DBA  | zijiet  | 200041206 | 10000.99 |

| 100001 | guanxuye  | 20   | m    | zhineng | 17329912222 | hunanchangdeshjimeng | changsha  | DBA  | zijiet  | 200041206 | 10000.99 |

+--------+-----------+------+------+---------+-------------+----------------------+-----------+------+---------+-----------+----------+

#查看表的结构

root@hunan 14:08  mysql>desc sc_student;

+----------+---------------+------+-----+---------+-------+

| Field    | Type          | Null | Key | Default | Extra |

+----------+---------------+------+-----+---------+-------+

| id       | int(11)       | YES  |     | NULL    |       |

| name     | varchar(20)   | YES  |     | NULL    |       |

| age      | varchar(20)   | YES  |     | NULL    |       |

| sex      | char(1)       | YES  |     | NULL    |       |

| major    | varchar(20)   | YES  |     | NULL    |       |

| phone    | varchar(14)   | YES  |     | NULL    |       |

| address  | varchar(30)   | YES  |     | NULL    |       |

| city     | varchar(20)   | YES  |     | NULL    |       |

| work     | varchar(20)   | YES  |     | NULL    |       |

| company  | varchar(10)   | YES  |     | NULL    |       |

| birthday | int(15)       | YES  |     | NULL    |       |

| salary   | decimal(10,2) | YES  |     | NULL    |       |

+----------+---------------+------+-----+---------+-------+

#这个命令可以查看字符集和数据引擎

root@hunan 14:09  mysql>show create table sc_student;    

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |

##项目和开发作业

1.  list和tuple的区别

2.  什么是pep8 pep8能说出几点

3.  Python内存管理

4.  Python常用模块有哪些 能不能说一下 怎么使用 用来干过什么

5.  Python中的多进程和多线程 都使用什么模块

6.  Python的GIL是什么

7.  什么是协程

8.  Flask和django的区别

9.  项目相关  流程  虚拟环境   request对象   使用模块

10. 深浅拷贝  原理  现象

11. Python的字典和列表的实现原理

12. Python的异常处理  基本正则

13. Python面向对象   经典类和新式类的区别(多重继承算法  经典类---深度优先  新式类—c3算法)   用过的魔术方法   __init__?

14. 什么是装饰器?装饰器的作用

项目名称: 基于flask的****系统的api开发

项目环境: centos7,python3.9,flask2.0,MySQL5.7,postman,gunicorn

项目描述:

根据***业务系统的要求,编写*个接口(用户注册,业务查询,登陆验证,日志等),实现对**系统数据的增删改查,给其他的业务系统提供数据支撑。返回json类型的数据,给哪些人使用,解决了什么问题

git的地址或者网站地址

项目步骤:

1.使用flask框架开发整个系统,对整个系统进行数据库的设计(多少个模块,多少张表),使用MySQL数据库,整个api开发遵循restful规范,总共有*个接口

2.首先实现登陆注册模块的功能,使用**技术达到***目的

3.实现**模块的功能,使用**技术(模块)达到***目的,攻克了**难题--》使用的模块名字,处理函数的内部技术,数据库相关的技术等(蓝图,路由,celery,log,认证等)

4.实现**模块的功能,使用**技术(模块)达到***目的,攻克了**难题

5.实现**模块的功能,使用**技术(模块)达到***目的,攻克了**难题

6.将这个项目通过gunicorn部署到云服务器上,进行测试并且上线

项目心得

在本次开发接口的过程中,体会到了****,对***影响深刻,遇到的问题**,学习了****。

  root@hunan 11:43  scmysql>create table sc_student(

    -> id int primary key,

    -> name varchar(20) not null,

    -> sex  enum('男','女') not null,

    -> age tinyint ,

    -> major varchar(20),

    -> phoneNO varchar(20),

    -> address  varchar(50),

    -> position varchar(20),

    -> city  varchar(20),

    -> company varchar(20),

    -> birth date,

    -> salary  decimal(12,2),

    -> college varchar(20)

    -> );

Query OK, 0 rows affected (0.03 sec)

root@hunan 11:50  scmysql>create table sc_student( id int primary key, name varchar(20) not null, sex  enum('男','女') not null, age tinyint , major varchar(20), phoneNO varchar(20), address  varchar(50), position varchar(20), city  varchar(20), company varchar(20), birth date, salary  decimal(12,2), college varchar(20) );

root@hunan 11:52  scmysql>insert into sc_student  values(1,'tanghaoming','男',23,'农业工程与信息技术','12345678911','江苏淮安','运维开发工程师','上海','大公司','2022-8-10',20000.00,'湖南农业大学');

Query OK, 1 row affected (0.01 sec)

root@hunan 11:56  scmysql>select * from sc_student;

+----+-------------+-----+------+-----------------------------+-------------+--------------+-----------------------+--------+-----------+------------+----------+--------------------+

| id | name        | sex | age  | major                       | phoneNO     | address      | position              | city   | company   | birth      | salary   | college            |

+----+-------------+-----+------+-----------------------------+-------------+--------------+-----------------------+--------+-----------+------------+----------+--------------------+

|  1 | tanghaoming | 男  |   23 | 农业工程与信息技术          | 12345678911 | 江苏淮安     | 运维开发工程师        | 上海   | 大公司    | 2022-08-10 | 20000.00 | 湖南农业大学       |

+----+-------------+-----+------+-----------------------------+-------------+--------------+-----------------------+--------+-----------+------------+----------+--------------------+

1 row in set (0.00 sec)

root@hunan 11:56  scmysql>select * from sc_student\G;

*************************** 1. row ***************************

      id: 1

    name: tanghaoming

     sex: 男

     age: 23

   major: 农业工程与信息技术

 phoneNO: 12345678911

 address: 江苏淮安

position: 运维开发工程师

    city: 上海

 company: 大公司

   birth: 2022-08-10

  salary: 20000.00

 college: 湖南农业大学

1 row in set (0.00 sec)

ERROR:

No query specified

root@hunan 11:57  scmysql>

root@hunan 11:50  scmysql>desc sc_student;

+----------+-------------------+------+-----+---------+-------+

| Field    | Type              | Null | Key | Default | Extra |

+----------+-------------------+------+-----+---------+-------+

| id       | int(11)           | NO   | PRI | NULL    |       |  4

| name     | varchar(20)       | NO   |     | NULL    |       |  12

| sex      | enum('男','女')   | NO   |     | NULL    |       |  3

| age      | tinyint(4)        | YES  |     | NULL    |       |  1

| major    | varchar(20)       | YES  |     | NULL    |       |  30

| phoneNO  | varchar(20)       | YES  |     | NULL    |       |  15

| address  | varchar(50)       | YES  |     | NULL    |       |  60

| position | varchar(20)       | YES  |     | NULL    |       |  21

| city     | varchar(20)       | YES  |     | NULL    |       |  9

| company  | varchar(20)       | YES  |     | NULL    |       |  36

| birth    | date              | YES  |     | NULL    |       |  3

| salary   | decimal(12,2)     | YES  |     | NULL    |       |  7

| college  | varchar(20)       | YES  |     | NULL    |       |  24

+----------+-------------------+------+-----+---------+-------+ 225

225 * 100000

##关键字

主键: primary key : 一列或者多列,内容不允许出现一样的

entry 条目   ,一个条目就是一条记录  record  一行数据

选项: 可供选择的项目,可接可不接,接了有特效 option

对字段类型的选项---》属性--》约束(限制)

not null

zerofill

primary key

auto_increment   初始值  为1    步长值(偏移量)默认为1

====

root@hunan 14:58  scmysql>delete  from city_name; 删除整个表里的数据

root@hunan 14:59  scmysql>delete  from city_name where id=9;  添加了条件的删除语句

Query OK, 1 row affected (0.04 sec)

MySQL里的系统的自带的变量(预定义)变量是@@  两个@@符号

自定义的变量是@

##auto_increment的具体使用

offset

SET @@auto_increment_offset = 10,  -- 起始值

      @@auto_increment_increment=10;  -- 每次加几

root@hunan 15:00  scmysql>SET @@auto_increment_offset = 10;

Query OK, 0 rows affected (0.00 sec)

root@hunan 15:03  scmysql>SET @@auto_increment_increment = 10;

Query OK, 0 rows affected (0.00 sec)

root@hunan 15:04  scmysql>select @@auto_increment_offset ,@@auto_increment_increment;

+-------------------------+----------------------------+

| @@auto_increment_offset | @@auto_increment_increment |

+-------------------------+----------------------------+

|                      10 |                         10 |

+-------------------------+----------------------------+

1 row in set (0.00 sec)

root@hunan 15:04  scmysql>

root@hunan 15:04  scmysql>set  @sg = 'liangliang';

Query OK, 0 rows affected (0.02 sec)

root@hunan 15:05  scmysql>insert into city_name(name) values(@sg);

Query OK, 1 row affected (0.00 sec)

root@hunan 15:05  scmysql>select * from city_name;

+----+------------+

| id | name       |

+----+------------+

| 11 | wangzx     |

| 20 | liangliang |

+----+------------+

2 rows in set (0.00 sec)

root@hunan 15:05  scmysql>

临时表: 只是临时在内存里存在,使用show tables查看不到,用户退出MySQL,马上会删除用户新建的临时表,其他用户不能看到你创建的临时表,只能自己可见。

#comment的使用

加注释

root@hunan 19:57  mysql>create table wangshuai(id int  primary key comment

'编号',name varchar(20) not null comment '姓名');

root@hunan 19:57  mysql>show create table wangshuai;

+-----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

| Table     | Create Table                                                                                                                                                                      |

+-----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

| wangshuai | CREATE TABLE `wangshuai` (

  `id` int(11) NOT NULL COMMENT '编号',

  `name` varchar(20) NOT NULL COMMENT '姓名',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4     |

##default的使用

默认 id default 50

这样当你没有像表中插入一个值的时候,默认值就是50,

有值插入时,就是插入你输入的值

##like使用

oot@hunan 15:20  scmysql>create table new_city like city_name;  复制表的结构

Query OK, 0 rows affected (0.04 sec)

root@hunan 15:20  scmysql>show tables;

+-----------------+

| Tables_in_hunan |

+-----------------+

| city_name       |

| city_name2      |

| city_name3      |

| new_city        |

| sc_student      |

| width           |

+-----------------+

6 rows in set (0.01 sec)

root@hunan 15:20  scmysql>desc new_city;

+-------+------------------+------+-----+---------+----------------+

| Field | Type             | Null | Key | Default | Extra          |

+-------+------------------+------+-----+---------+----------------+

| id    | int(10) unsigned | NO   | PRI | NULL    | auto_increment |

| name  | varchar(10)      | NO   |     | NULL    |                |

+-------+------------------+------+-----+---------+----------------+

2 rows in set (0.02 sec)

root@hunan 15:20  scmysql>select * from new_city;

Empty set (0.00 sec)

##as的使用

root@hunan 15:21  scmysql>

复制一个表的结构和里面的数据

root@hunan 15:21  scmysql>create table new_city2 as select * from city_name;

Query OK, 4 rows affected (0.13 sec)

Records: 4  Duplicates: 0  Warnings: 0

root@hunan 15:23  scmysql>select * from new_city2;

+----+------------+

| id | name       |

+----+------------+

| 11 | wangzx     |

| 20 | liangliang |

| 30 | pengpeng   |

| 40 | yaoyao     |

+----+------------+

4 rows in set (0.00 sec)

root@hunan 15:23  scmysql>

##取别名

  1. as
  2. table1  table2##这样的话table1的别名就是table

##set的使用

UPDATE table_name

SET column1 = value1, column2 = value2, ...

WHERE condition;

CREATE TABLE myset (col SET('a', 'b', 'c', 'd'));

root@liangliang 16:54  mysql>SELECT col FROM myset;

##unique

类似设置主键,设置唯一

##分组-having

##group by 去重--having + condition

##concat--字符串拼接

SELECT CONCAT(NAME,STREET) 'address',PHONENO FROM PLAYERS

##distinct-->去重限制(select )

##order by 排序

asc升序排序

desc降序排序

#in

#any

#all

聚合函数sum max min avg,count

COUNT:用于统计指定列,计算行的数量。count(*)

SELECT COUNT(*) FROM table_name; -- 统计表中的总行数

SUM:用于计算指定列的总和(一般适用于数值类型)

AVG:用于计算指定列的平均值。

MIN:用于获取指定列的最小值。

MAX:用于获取指定列的最大值。

##limit 限制

limit 2 只取前两行

SELECT * FROM table_name

LIMIT 10 OFFSET 20;

返回从第 21 行开始的 10 行记录。

limit 1,2

##表示 offset=1,步长为2,skip跳过第一行,返回第二行和第三行的数据

##substr(字段名,起始字符,终止字符)

#group_concat ()

group_concat (name)

它可以将name列中的多个值合并为一个字符串

##join多表查询

nature join#自然连接子句

SELECT *

FROM table1

NATURAL JOIN table2;

自然连接根据两个表之间的列名相匹配来进行连接。它会自动查找两个表中具有相同名称的列,并基于这些列进行连接

using #子句--》指定列

SELECT *

FROM table1

JOIN table2 USING (common_column);

使用 USING 子句可以指定连接时所使用的列。它指定了一个或多个列,这些列将用于连接两个表

on#子句(有点像where)

SELECT *

FROM table1

JOIN table2

 ON table1.column = table2.column;

使用 ON 子句可以指定连接时的条件,这些条件可以是任意合适的比较条件。

ON 子句允许你明确指定连接条件,而不依赖于列名的匹配。

left join 左外连接

right join 右外连接

##建立临时表

create temporary table

root@hunan 19:38  mysql>create temporary  table wangyalin (id int ,name varchar(20),sex char(1));

##临时表式放在内存里面,会话结束,内存释放,临时表的数据就会消失,只有自己可见,别人是看不到;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/796577.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BUUCTF:BUU UPLOAD COURSE 1[WriteUP]

构造一句话PHP木马 <?php eval(system($_POST[shell])); ?> 利用eval函数解析$shell的值使得服务器执行system命令 eval函数是无法直接执行命令的&#xff0c;只能把字符串当作php代码解析 这里我们构造的木马是POST的方式上传&#xff0c;那就用MaxHacKBar来执行 …

【vite】-【vite介绍】-【vite的基础应用】-【vite的高级应用】-【

目录 vite介绍vite的基础应用vite创建项目vite创建vue3项目vite创建vue2项目vite创建react项目 vite中使用css的各种功能vite中使用tsvite中处理静态资源的方法vite集成eslint和prettiervite中的env环境变量 vite的高级应用 vite介绍 一、特点&#xff1a; 开发时效率极高开箱…

Day:004(1) | Python爬虫:高效数据抓取的编程技术(数据解析)

数据解析-正则表达式 在前面我们已经搞定了怎样获取页面的内容&#xff0c;不过还差一步&#xff0c;这么多杂乱的代码夹杂文字我们怎样 把它提取出来整理呢&#xff1f;下面就开始介绍一个十分强大的工具&#xff0c;正则表达式&#xff01; 正则表达式是对字符串操作的一种…

华为ensp中高级acl (控制列表) 原理和配置命令 (详解)

作者主页&#xff1a;点击&#xff01; ENSP专栏&#xff1a;点击&#xff01; 创作时间&#xff1a;2024年4月6日23点18分 高级acl&#xff08;Access Control List&#xff09;是一种访问控制列表&#xff0c;可以根据数据包的源IP地址、目标IP地址、源端口、目标端口、协议…

Golang | Leetcode Golang题解之第13题罗马数字转整数

题目&#xff1a; 题解&#xff1a; var symbolValues map[byte]int{I: 1, V: 5, X: 10, L: 50, C: 100, D: 500, M: 1000}func romanToInt(s string) (ans int) {n : len(s)for i : range s {value : symbolValues[s[i]]if i < n-1 && value < symbolValues[s…

关于 VScode, 点击文件右键或者在文件夹中没有 【 在vscode中打开选项】 解决办法

关于 VScode, 点击文件右键或者在文件夹中没有 【 在vscode中打开选项】 解决办法 段子手-168 2024-4-6 1、在任意位置创建一个文本文件。如&#xff1a;a.txt 2、复制以下代码到 a.txt 文本文件中。 &#xff08;注&#xff1a; 以 ; 开头的 , 是备注信息 , 不需要做任何修…

基于单片机高压输电线路微机保护系统设计

**单片机设计介绍&#xff0c;基于单片机高压输电线路微机保护系统设计 文章目录 一 概要二、功能设计三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机高压输电线路微机保护系统设计是一个涉及电力系统继电保护的复杂工程。该系统主要利用单片机作为控制核心&…

博客部署001-centos安装docker

1、安装docker 1.1 卸载旧版本的 Docker sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine1.2 设置 Docker 仓库 安装 Docker Engine 之前&#xff0c;首先需要设置…

redis 哨兵

文章目录 前言主从复制的问题怎么人工恢复故障主节点 Redis Setinel 架构使用 docker 来配置哨兵结构安装 docker编排 redis 主从节点编排 redis 哨兵节点 观察哨兵模式的作用主从切换的具体流程小结 前言 redis 主从复制模式下, 一旦主节点出现故障, 不能提供服务的时候, 就需…

C++ | Leetcode C++题解之第13题罗马数字转整数

题目&#xff1a; 题解&#xff1a; class Solution { private:unordered_map<char, int> symbolValues {{I, 1},{V, 5},{X, 10},{L, 50},{C, 100},{D, 500},{M, 1000},};public:int romanToInt(string s) {int ans 0;int n s.length();for (int i 0; i < n; i) …

jmeter下载与使用

下载 官网下载地址&#xff1a;Apache JMeter - Apache JMeter™ 由于jmeter是由java语言编写的&#xff0c;所以要先安装jdk1.8或者以上的版本 配置环境变量 配置classpath环境变量 %JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HO…

很详细的单应矩阵分解R、t过程

很详细的单应矩阵分解R、t过程 附赠自动驾驶学习资料和量产经验&#xff1a;链接 已有多种方法将单应矩阵H分解为R、t&#xff0c;在《Deeper understanding of the homography decomposition for vision-based control》一文中介绍了三种方法&#xff1a; O. Faugeras and F.…

Qt Creator 界面

&#x1f40c;博主主页&#xff1a;&#x1f40c;​倔强的大蜗牛&#x1f40c;​ &#x1f4da;专栏分类&#xff1a;QT❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、认识 Qt Creator 界面 1、总览 2、左边栏 3、代码编辑区 4、UI设计界面 5、构建区 一、认识 …

摄影杂记一

摄影小白&#xff0c;最近买了一台微单&#xff0c;型号是佳能R10&#xff0c;加上18-150套机镜头和佳能RF 50 F1.8定焦镜头。开始学习摄影。 PS&#xff1a;摄影穷三代&#xff0c;单反毁一生。嘿嘿。 一、分镜头拍摄四步提升法 B站&#xff1a;六斤 拍视频三件事&#xff1…

专注项目管理的Mac工具 - Project Office Pro 最新版

Project Office Pro for Mac是一款功能强大的项目管理软件&#xff0c;旨在帮助用户更好地管理和跟踪项目进展&#xff0c;提高工作效率和质量。以下是该软件的主要功能介绍&#xff1a; 项目创建与编辑&#xff1a;用户可以根据自己的需求自定义项目计划&#xff0c;包括设置…

【51单片机入门记录】RTC(实时时钟)-DS1302概述

目录 一、基于三线通信的RTC-DS1302 &#xff08;1&#xff09;简介 &#xff08;2&#xff09;特性 &#xff08;3&#xff09;引脚介绍 &#xff08;4&#xff09;控制字的格式 &#xff08;5.0&#xff09;日历时钟寄存器介绍 &#xff08;5.1&#xff09;日历时钟寄存…

4.1.k8s的pod-创建,数据持久化,网络暴露,env环境变量

目录 一、Pod介绍 二、指令创建和管理Pod 三、资源清单创建pod 1.挂载hostPath存储卷 2.NFS存储卷 所有节点安装nfs k8s3编辑NFS配置文件 k8s1&#xff0c;k8s2节点开机挂载 编辑pod资源清单&#xff0c;挂载nfs 四、pod网络暴露 1.hostNetwork使用宿主机的网络 2.…

【单片机】74HC4052电路图,单片机端口复用电路

74HC4052电路图 如下图&#xff0c;还是很好理解&#xff0c;PA9、PA10是单片机引脚。 当A和B是00&#xff0c;那么就是X-COM和0X短路&#xff0c;Y-COM和0Y短路。 当A和B是01&#xff0c;那么就是X-COM和1X短路&#xff0c;Y-COM和1Y短路。 以此类推。 74HC 工艺可以直接3.…

【Android】图解View的工作流程原理

文章目录 入口DecorView如何加载到Window中MeasureSpec MeasureView的测量ViewGroup的测量 LayoutView的layout() Draw1、绘制背景3、绘制View内容4、绘制子View6、绘制装饰 入口 DecorView如何加载到Window中 MeasureSpec 该类是View的内部类&#xff0c;封装View的规格尺寸…

FlutterFlame游戏实践#08 | 打砖块 -关卡设计

theme: cyanosis 本文为稀土掘金技术社区首发签约文章&#xff0c;30天内禁止转载&#xff0c;30天后未获授权禁止转载&#xff0c;侵权必究&#xff01; Flutter\&Flame 游戏开发系列前言: 该系列是 [张风捷特烈] 的 Flame 游戏开发教程。Flutter 作为 全平台 的 原生级 渲…