gpt4 book ai didi

mysql - 是否可以在 MySQL 的 SELECT 语句中使用带有 * 的 IFNULL() ?如果没有,我的替代方案是什么?

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

这是我目前在 SELECT 语句中使用的内容:

SELECT
movieitemdetails.barcode,
IFNULL(movieitemdetails_custom.title, movieitemdetails.title) AS title
FROM
...

问题是,当涉及到列名称和列数量时,我需要让 SQL 更加动态。我需要使用 * 动态拉回所有行。这是一些示例伪代码,向您展示我需要什么:

IFNULL(movieitemdetails_custom.*, movieitemdetails.*) AS *

我需要它来带回每个表上具有相同名称的所有列并进行 IFNULL 比较。显然上面的代码是不正确的。

有人对如何使我的内容更加动态(涉及 *)有任何想法吗?

对某些人的注意事项:请不要批评我不应该使用 *。我知道在一般用途中不建议这样做,但在这个特定项目中,我们正在使用它。

最佳答案

不,IFNULL() 函数仅接受两个标量表达式,而不接受像 * 这样的通配符表达式。

为了使该查询更加动态,您的选择是:

  • 使用应用程序代码构建查询,为每个这样的列对附加一个 IFNULL() 表达式。然后提交查询。

或者:

  • 使用 SELECT * ... 独立获取所有列,然后挑选出要在应用程序代码中使用的列。

关于mysql - 是否可以在 MySQL 的 SELECT 语句中使用带有 * 的 IFNULL() ?如果没有,我的替代方案是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19366672/

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