gpt4 book ai didi

c# - SQL查询在.net项目中不起作用,但在adminer/phpmyadmin中正常运行

转载 作者:行者123 更新时间:2023-11-29 18:37:28 24 4
gpt4 key购买 nike

像上面一样,我的 sql 查询在 .net 项目中不起作用,尽管它在 adminer/phpmyadmin 中工作。这很奇怪。代码如下:

SELECT mh.id AS `id`,
IFNULL(ot.name, it.name) AS name,
IFNULL(ot.name_en, it.name_en) AS name_en
FROM udata.table1 mh
INNER JOIN udata.table2 i ON mh.id= i.id
INNER JOIN adata.table3 it ON i.type = it.id
LEFT JOIN adata.table4 ot ON i.arg1 = ot.id AND i.kind = 46
WHERE mh.status = '1' HAVING ( `name_en` LIKE '%A%') LIMIT 0,30;

管理员给了我 2 个与在我的 C# 项目中运行查询不同的结果。我在那里遇到了这个错误:

MySql.Data.MySqlClient.MySqlException (0x80004005): Unknown column 'name_en' in 'having clause'

预先感谢您的帮助

最佳答案

子句不能使用查询别名,而必须直接使用列。所以

HAVING  ( `name_en` LIKE '%A%') 

应该是

HAVING  ( IFNULL(ot.name_en, it.name_en) LIKE '%A%') 

关于c# - SQL查询在.net项目中不起作用,但在adminer/phpmyadmin中正常运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45168258/

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