gpt4 book ai didi

mysql - 在 MySQL 中,我可以从一个表中选择所有列,然后从另一个表中选择一个列吗?

转载 作者:行者123 更新时间:2023-11-29 03:49:42 24 4
gpt4 key购买 nike

在 MySQL 中,我有一个简单的 "SELECT * FROM foo" 查询。我想 JOIN 表 'bar',但是:

  1. 我只想要 bar 中的一列
  2. 我特别不想要 barid 列,因为它会与 foo< 的 id 列冲突

我知道我可以使用 as 语句来避免名称冲突,但我不想让事情复杂化。有没有一种方法可以在不命名我想要从 foo 中命名的每一列的情况下编写此查询?

换句话说,我可以说“给我 foo 的所有列和 bar 的这一列吗?

更新:为什么这是不好的做法

人们指出 "SELECT *" 通常是不好的做法,因为:

  • 它返回不必要的数据。现在或将来,这可能包括一些大的东西,比如 BLOB 数据列。
  • 如果数据库架构发生变化,查询可能不会返回预期的列之一。如果列在查询中明确命名,则会出错;否则,它可能会默默地失败(例如,在标题应该去的地方插入一个空白)。

最佳答案

SELECT foo.*, bar.whatever FROM ...

但是请注意,这被认为是不好的做法。您应该始终按照您期望的顺序命名所有列。

关于mysql - 在 MySQL 中,我可以从一个表中选择所有列,然后从另一个表中选择一个列吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1941030/

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