gpt4 book ai didi

mysql - 如果字段名是唯一的,在 SQL 查询中使用表名?

转载 作者:行者123 更新时间:2023-11-29 05:05:21 25 4
gpt4 key购买 nike

如果所有列名都是唯一的,是否需要在 MySQL 查询中指定表名前缀?如果不使用它们会影响性能吗?一般来说,SQL 是一样的吗?例如:

没有前缀

SELECT
id_events, title_events, name_venues, name_cities
FROM
(events
LEFT JOIN venues ON idvenues_event = id_venues)
LEFT JOIN cities ON idcities_events = id_cities

带前缀

SELECT
e.id_events, e.title_events, v.name_venues, c.name_cities
FROM
(events AS e
LEFT JOIN venues As v ON e.idvenues_event = v.id_venues)
LEFT JOIN cities AS c ON e.idcities_events = c.id_cities

最佳答案

1.如果所有列名都是唯一的,是否需要在 MySQL 查询中指定表名前缀?

不需要。但为了更好的可读性,表名或别名被赋予列名,以便于理解

SQL 别名

  • SQL 别名用于给表或表中的列一个临时名称
  • 别名通常用于使列名更具可读性
  • 仅别名在查询期间存在

2。它会影响性能吗?

不,性能取决于您给查询的负载

一个 View ,只是一个持久化在数据库中的查询,理论上不应该有任何性能影响。列或表别名也是如此。一旦执行计划被数据库引擎编译和缓存,性能影响(如果有的话)将几乎不会被注意到。因此,没有理由不使用基于 View 的列别名。

3.一般的 SQL 也是一样吗?

是的。

关于mysql - 如果字段名是唯一的,在 SQL 查询中使用表名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49449624/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com