如果不是NULL,我想为一列(comment_graduate_id
,comment_employer_id
)选择数据。其中一个将为NULL,第二个将具有值。所以我想选择具有值的列来从其表中调用其数据:
$stmt = $con->prepare("
SELECT
comments.comment_id,
comments.comment_content,
comments.comment_date_and_time,
graduated.graduate_first_name,
employers.employer_name
FROM comments
INNER JOIN graduated ON
comments.comment_graduate_id = graduated.graduate_id
INNER JOIN employers ON
comments.comment_employer_id = employers.employer_id
WHERE
comments.comment_job_offer_id = ?
ORDER BY comments.comment_id DESC");
答案 0 :(得分:0)
有可用的功能,我更喜欢使用coalesce()
,因为它不是特定于数据库的,它也可以处理2个以上的参数。
coalesce( comment_graduate_id, comment_employer_id )
如果不为null,这将返回comment_graduate_id,否则它将返回comment_employer_id,如果第二列也为null,则返回NULL。
MySQL的特定功能是IFNULL()
,但我建议你改用coalesce。