gpt4 book ai didi

mysql - 检查表是否有行,如果没有则返回字符串

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

如果有一个表,test,如果表只有标题而没有其他行,我们如何返回“No data”

IF (SELECT 1 FROM test) < 1 THEN (SELECT ' No data');

END IF;

以下代码不断返回SQL ERROR(1064):您的 SQL 查询中有语法错误。但是,我使用语法 specified in the manual .

最佳答案

我认为检查表上是否有记录的最佳方法是执行一条 SQL 语句,当没有找到记录时返回“0”,当找到记录时返回“n”,“n”是记录数存在于 table 上......你可以简单地这样做:

SELECT COUNT(1) AS TOTAL_ROWS FROM test;

...是保存在名为 TOTAL_ROWS

的列上的结果

不过,对于您的请求,可以通过以下查询获得结果:

SELECT IF(TOTAL_ROWS = 0, 'No data', 'There\'s data on \'test\' table') AS `EXISTS DATA?` 
FROM (
SELECT COUNT(1) AS TOTAL_ROWS FROM test
)t
;

如您所见,结果是通过几个嵌套查询获得的:

  • 内部查询 SELECT COUNT(1) AS TOTAL_ROWS FROM test 计算 test TABLE 上现有记录的总数,并将结果保存在 TOTAL_ROWS 中>
  • 外部查询检查 TOTAL_ROWS 中保存的值,并根据结果显示所需的标签。

关于mysql - 检查表是否有行,如果没有则返回字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39237777/

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