MySQL中*.*的含义

MySQL中*.*的含义,第1张

首先,题干中的 *.* 表示的意思是 任意数据库 下的 任意数据表,即所有数据库都有效的意思。

在MySQL中*和.都有特殊的含义

* 代表通配符,表示匹配任意或者所有的意思,如:

select * from table# 这里的*表示匹配所有字段,是字段列表的代指

grant select on *.*# 这里的*有两个,第一个*代表所有数据库,第二个*代表所有数据表,如果是Test.test表示Test数据库下的test数据表

. 代表连接符,表示后者属于前者的关系,如:

select a.*,b.id from tableA as a left join tableB as b on a.bid = b.id# 这里a是tableA的别名,b是tableB的别名,a.*表示a表下的所有字段,b.id表示b表下的id字段

grant select on *.*# 这里的.也类似,表示指定数据库下的指定数据表

想要了解更多关于MySQL的知识,可以去6天玩转MySQL看看

SQL *和%区别为:作用不同、优先级不同、针对范围不同。

一、作用不同

1、*通配符:*通配符的作用是用来匹配所有结果集。

2、%通配符:%通配符的作用是用来替代一个或多个字符。

二、优先级不同

1、*通配符:*通配符的优先级比%通配符高,在同一条sql语句中,优先执行。

2、%通配符:%通配符的优先级比*通配符低,在同一条sql语句中,稍后执行。

三、针对范围不同

1、*通配符:*通配符的针对范围为一条记录的所有字段。

2、%通配符:%通配符的针对范围为一条记录的单个字段。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6769146.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-28
下一篇2023-03-28

发表评论

登录后才能评论

评论列表(0条)

    保存