【问题标题】:Error when using MySQL IFNULL() with SELECT query将 MySQL IFNULL() 与 SELECT 查询一起使用时出错
【发布时间】:2022-01-03 02:02:57
【问题描述】:

请检查下面的 MySQL 代码。

SELECT seller_job_invites.idseller_job_invites,
seller_job_invites.idjob,
seller_job_invites.iduser as seller_id,
seller_job_invites.idjob_status,
user.iduser AS buyer_id,
user.first_name AS buyer_first_name,
user.last_name as buyer_last_name,
user.profile_picture AS buyer_profile_picture,
job.idjob_subcategories,
job.posted_date,
job.start_date,
job.location_lat,
job.location_long,
(SELECT IFNULL((SELECT translations.word FROM translations WHERE translations.dtype="JOB_SUB_CATEGORY" AND translations.language_code="FR" AND translations.fkey=job.idjob_subcategories) AS subcategory_name,(SELECT translations.word FROM translations WHERE translations.dtype="JOB_SUB_CATEGORY" AND translations.language_code="EN" AND translations.fkey=job.idjob_subcategories) AS subcategory_name)),
job_status.name AS 'job_status'
FROM peresia.seller_job_invites
INNER JOIN job ON seller_job_invites.idjob = job.idjob
INNER JOIN user ON job.iduser = user.iduser 
INNER JOIN job_status ON seller_job_invites.idjob_status = job_status.idjob_status
WHERE seller_job_invites.iduser=52 AND (job_status.name = 'SELLER_SCREENING' OR job_status.name ='SELLER_INVITED')

请注意我正在使用的子查询。我要做的是返回单词的法语翻译,如果它是 NULL 则返回英文单词。

这给了我以下错误。

Error Code: 1583. Incorrect parameters in the call to native function 'ifnull'

我该如何解决这个问题?

【问题讨论】:

  • 您似乎在 IFNULL 调用中分配别名。删除它们并在函数调用之外添加一个别名。
  • @nnichols:哇,谢谢!有效。请提供评论作为答案。

标签: mysql database select subquery


【解决方案1】:

您似乎在 IFNULL 调用中分配别名。删除它们并在函数调用之外添加一个别名。

【讨论】:

    猜你喜欢
    • 2012-06-24
    • 1970-01-01
    • 2017-09-24
    • 2014-11-23
    • 2015-04-17
    • 2014-08-18
    • 2017-05-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多