在unioned表中获取MySQL中的重复SQL值

时间:2016-12-07 13:56:21

标签: mysql

我正在尝试在MySQL中进行数据库查询:

SELECT id, number_id, number, year
    FROM
        tb_figures WHERE (id = 7 AND year = 45 AND number IS NULL) 
    AND  
        (id = 7 AND year = 47 AND number IS NOT NULL)
    ORDER BY
        number_id;

但它会返回一个空表,尽管有些情况应该匹配。

我想在年= 47 时检查数字是否为非空,如果年= 45 时数字为空,则仅显示两者都产生了一个表格。

编辑:正如评论中所述,我得到了逻辑错误,上述查询无效。

我设法接近这个问题:

SELECT
    id, number_id, number, year
FROM 
    tb_figures
WHERE
    id = 7 AND  (year = 45 AND number IS NOT NULL)

UNION

SELECT
    id, number_id, number, year
FROM 
    tb_figures
WHERE
    id = 7 AND (year = 47 AND kennzahl IS NULL)
ORDER BY
     number_id;

但现在我只需要显示具有相同 number_id 的行。

我可以在查询中添加任何内容,只显示重复 number_id 的行吗?

1 个答案:

答案 0 :(得分:3)

如果我只遵循您的描述,我会尝试以下方法:

mysql_fetch_array()