PHP比较Mysql的值

时间:2012-07-09 12:57:01

标签: php mysql

MySql表格如下:

    id    |        values   
  --------------------------------
    41    |    154, 256, 526, 50
    86    |    542, 586, 785, 41

我想将此数据库中的值与来自另一个MySql查询的结果中的值进行比较。 从另一个查询中我得到特定用户和valus的结果,例如:

user id: 41
values: 154,526,50

如何比较这两个数据库“值”列,并得到总不同值的数量和不同的值?

在这个例子中,PHP函数的结果将是:

total number of different values: 1
different value: 256

3 个答案:

答案 0 :(得分:3)

通过规范化您的数据库。将这些值保存在不同的表中,并创建一个新的耦合表,将值连接到用户。这将大大简化您的开发。

编辑: 该查询将如下所示:

SELECT
    value
FROM
    couplings_table
WHERE
    user_id = X
AND
    value NOT IN (SELECT
                    value
                  FROM
                    couplings_table
                  WHERE
                    user_id = Y)

答案 1 :(得分:2)

答案 2 :(得分:1)

使用“,”进行爆炸,并使用数组diff或搜索in_array中的每个项目并使用结果。我认为array_diff就是为了这个。