MySQL:AS 别名中可以有通配符吗?

发布于 2024-09-13 02:27:17 字数 371 浏览 4 评论 0原文

我有一堆跨多个表命名相同的字段(我继承了它 - 不要责怪我;)。

是否可以通过通配符自动分配/添加别名,而不是详细设置所有别名?

我正在设想类似的东西(当然这实际上并不起作用):

SELECT t1.*,t2.* as alias2.*, t3.* as alias3.*

所以我会得到如下返回的字段:

name, address, city, state
alias2.name, alias2.address, alias2.city, alias2.state
alias3.name, alias3.address, alias3.city, alias3.state

I have a bunch of fields named the same across multiple tables (I inherited it - don't blame me ;).

Instead of setting up all of the aliases verbosely, is it possible to assign/prepend an alias automatically by way of a wildcard?

I'm envisioning something like (which of course doesn't really work):

SELECT t1.*,t2.* as alias2.*, t3.* as alias3.*

So I would get returned fields like:

name, address, city, state
alias2.name, alias2.address, alias2.city, alias2.state
alias3.name, alias3.address, alias3.city, alias3.state

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

最好是你 2024-09-20 02:27:17

确实如此,如果您将其用作:

SELECT t1.*, alias2.*, alias3.*
  FROM t1, 
       t2 AS alias2, 
       t3 AS alias3

定义表别名,那么您可以在 SELECT 中使用表别名.*。但如果没有唯一的列别名,获取正确的 address/etc 字段仍然会变得很痛苦...

免责声明

为了简洁起见,我只使用了 ANSI-89 语法 - 诚实

This does, if you use it as:

SELECT t1.*, alias2.*, alias3.*
  FROM t1, 
       t2 AS alias2, 
       t3 AS alias3

Define the table alias, then you can use the table alias.* in the SELECT. But it's still going to make getting the correct address/etc field a pain without a unique column alias...

Disclaimer

I only used ANSI-89 syntax for brevity - honest.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文