MySQL,PHP:计算每个条件的结果+获取满足条件的总结果 查询测试表: xxx | yyy 999 | 888 999 | 787 111 | 222 查询: 结果: 澄清:

MySQL,PHP:计算每个条件的结果+获取满足条件的总结果 查询测试表: xxx | yyy 999 | 888 999 | 787 111 | 222 查询: 结果: 澄清:,php,mysql,Php,Mysql,我正在使用php,我想要一个 让我知道我可以从XXX获得多少结果,如'999'和YYY 像“[0-9]88[0-9]”,我能从XXX那里得到多少结果 “111”和YYY RLIKE“[0-9]23[0-9]”等等。与上一个查询类似 获取所有结果,如我使用此查询: 我的问题 如何将前面的两个点合并到一个查询中?加上在第二点上使用限制和顺序的功能。您需要进行单独的查询,或者使用UNION SELECT *, SUM(CASE WHEN XXX LIKE '999' AND YYY RL

我正在使用php,我想要一个

让我知道我可以从XXX获得多少结果,如'999'和YYY 像“[0-9]88[0-9]”,我能从XXX那里得到多少结果 “111”和YYY RLIKE“[0-9]23[0-9]”等等。与上一个查询类似

获取所有结果,如我使用此查询:

我的问题
如何将前面的两个点合并到一个查询中?加上在第二点上使用限制和顺序的功能。

您需要进行单独的查询,或者使用UNION

SELECT *,
       SUM(CASE WHEN XXX LIKE '999' AND YYY RLIKE '[0-9]8[0-9]' THEN 1 ELSE 0 END) AS Count999,
       SUM(CASE WHEN XXX LIKE '111' AND YYY RLIKE '[0-9]2[0-9]' THEN 1 ELSE 0 END) AS Count111
    FROM querytest
    WHERE 
    ( XXX LIKE '999' AND YYY RLIKE '[0-9]8[0-9]') 
    OR 
    ( XXX LIKE '111' AND YYY RLIKE '[0-9]2[0-9]')
Array
(
    [0] => 999
    [xxx] => 999
    [1] => 888
    [yyy] => 888
    [2] => 2
    [Count999] => 2
    [3] => 1
    [Count111] => 1
)
SELECT *
FROM querytest
WHERE 
( XXX LIKE '999' AND YYY RLIKE '[0-9]8[0-9]') 
OR 
( XXX LIKE '111' AND YYY RLIKE '[0-9]2[0-9]')