如何使用null || d.AM_Answer进行选择查询

时间:2014-02-26 04:45:29

标签: mysql sql union

我从数据库获取数据并使用union加入2表。但我需要使用null || d.AM_Answer。这里我只使用null, null。但它只会带来null价值。如果我存储了答案,我就没有得到答案。所以,我需要使用null || d.AM_Answer

select
    b.QM_ID, b.QM_QCM_ID, b.QM_Question, b.QM_Type, b.QM_Parent_Id, null, null 
from 
    question_master b 
    INNER JOIN Assessment_master d 
     on ( d. AM_QM_ID = b.QM_Parent_Id 
          AND d.AM_HNM_ID = %d 
          AND d.AM_HM_ID = %d 
          and d.AM_ASM_Local_Id = %@ )

1 个答案:

答案 0 :(得分:0)

您可以使用ifnull检查字段是否为空。如果不为null,则使用字段值。

示例

IFNULL( d.AM_Answer, null ) 

如果它不为空,则返回d.AM_Answer的值。

而且,您的价值比较报表中存在一些错误。

AND d.AM_HNM_ID = %d 
AND d.AM_HM_ID = %d 
AND d.AM_ASM_Local_Id = %@

如果%d%@是数字的占位符,那么这是错误的输入方式。
对于运行时值输入,您必须使用?占位符并使用预准备语句绑定这些参数的值。

AND d.AM_HNM_ID = ? 
AND d.AM_HM_ID = ?
AND d.AM_ASM_Local_Id = ?

使用服务器端脚本语言进行值绑定。

请参阅