mysql利用外连接删除数据_MySQL-快速入门(6)连接查询、子查询、正则表达式查询、数据的插入删除更新...

1、内连接查询:inner join ... on

只有满足条件的记录才能够出现在结果关系中,即完全相等。自连接查询是一种特殊的内连接查询。

2、外连接查询:

1》左外连接 / 左连接:返回包括左表中的所有记录和右表中连接字段相等的记录。

2》右外连接 / 右连接:返回包括右表中的所有记录和左表中连接字段相等的记录。

3》全外连接:返回两个表中所有的数据记录。

3、子查询

子查询常用的操作符有:any(some)、all、in、exists。

1》any(some):

select * from t1 where t1.id > any (select id from t2 where t2.name=...)

2》all:同上,可以与比较符一起使用。

3》exists / not exists:

4》in / not in:

5》带比较运算符的子查询:=、!=(或<>)

6》union / union all:合并查询结果

4、正则表达式查询

MySQL使用regexp关键字指定正则表达式的字符匹配模式,默认不区分大小写。

828c7b001cd19475aef1dbefa27253b9.png

匹配指定字符串:只要这个字符串在查询文本中即可。如果要匹配多个字符串,多个字符串之间使用分隔符‘|’隔开。

select * from test where name regexp 'or|ap';

匹配指定字符串中的任意一个:方括号“[]”指定一个字符集合,只匹配其中任何一个字符,即为所查找的文本。

select * from test where name regexp '[orap]';

select * from test where name regexp '[0-9]|[a-z]'; //[]中也可以是范围

匹配指定字符以外的字符:

select * from test where name regexp '[^a-z0-9]';

使用{n,}或者{n,m}来指定字符串连续出现的次数:

{n,}:表示至少匹配n次前面的字符

{n,m}:表示匹配前面的字符不少于n次,不多于m次。

select * from test where name regexp 'x{2,}';

或者select * from test where name regexp 'x{2,4}';

5、数据的插入、更新、删除

1》插入数据:

insert into tb_name(column_list) values(value_list);

或者insert into tb_name(column_list) values(value_list),(value_list),...;

或者insert into tb_name values(value_list),(value_list),...;

或者insert into tb_name(column_list) select (column_list) from tb_name2 where ...;

2》更新数据:

updatetb_nameset column_name =value,...where ...;

3》删除数据:

delete from tb_name [where ...];

truncate table tb_name; //将直接删除原来的表,并重新创建一个表

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL正则表达式是一种用于匹配和操作字符串的强大工具。它可以在MySQL数据库中进行模式匹配、搜索、替换等操作。在MySQL中,我们可以使用正则表达式来查找符合特定模式的数据。 以下是一些常用的MySQL正则表达式操作: 1. REGEXP:该操作符可用于在查询中使用正则表达式进行模式匹配。例如,可以使用`SELECT * FROM table_name WHERE column_name REGEXP 'pattern'`来查找符合特定模式的数据。 2. REGEXP_LIKE:该函数用于检查一个字符串是否与给定的正则表达式相匹配。例如,可以使用`SELECT * FROM table_name WHERE REGEXP_LIKE(column_name, 'pattern')`来查找符合特定模式的数据。 3. REGEXP_REPLACE:该函数用于将匹配到的字符串替换为新的字符串。例如,可以使用`SELECT REGEXP_REPLACE(column_name, 'pattern', 'replacement') FROM table_name`来替换符合特定模式的字符串。 4. REGEXP_INSTR:该函数用于返回一个字符串中第一个匹配项的位置。例如,可以使用`SELECT REGEXP_INSTR(column_name, 'pattern') FROM table_name`来获取符合特定模式的字符串的位置。 5. REGEXP_SUBSTR:该函数用于提取符合特定模式的字符串。例如,可以使用`SELECT REGEXP_SUBSTR(column_name, 'pattern') FROM table_name`来提取符合特定模式的字符串。 请注意,MySQL正则表达式的语法可以使用标准的正则表达式语法,但也有一些特定的规则和限制。在使用正则表达式时,建议参考MySQL官方文档以了解更多详细信息和示例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值