2011-09-15 17 views
1

イム使用してPHPあたりどのように多くの結果を知っていると私は、このMySQLのクエリを持ってする方法:MySQLのクエリとPHP:それぞれの「WHERE」条件

SELECT * FROM numbers 
     WHERE 
     (XXX LIKE '999' AND YYY RLIKE '[0-9]88[0-9]') 
     OR 
     (XXX LIKE '111' AND YYY RLIKE '[0-9]23[0-9]') 

私の質問: 私は私が得るどのように多くの結果を知ることができる方法(XXX LIKE '999' AND YYY RLIKE '[0-9] 88 [0-9]')と(XXX LIKE '111' AND YYY RLIKE '[0-9] 23 [0- 9] 'など)。 私はこれらの条件の多くがクエリに含まれているため、2つのクエリに分割したくありません。私はまだ条件を満たす結果を得たいと思っています。助けてください

答えて

4
SELECT *, 
     SUM(CASE WHEN XXX LIKE '999' AND YYY RLIKE '[0-9]88[0-9]' THEN 1 ELSE 0 END) AS Count999, 
     SUM(CASE WHEN XXX LIKE '111' AND YYY RLIKE '[0-9]23[0-9]' THEN 1 ELSE 0 END) AS Count111 
    FROM numbers 
    WHERE 
    (XXX LIKE '999' AND YYY RLIKE '[0-9]88[0-9]') 
    OR 
    (XXX LIKE '111' AND YYY RLIKE '[0-9]23[0-9]') 
+0

私は、PHPの変数でcount999とcount111を取得する方法を教えてください。ウルのお手伝いをしてくれてありがとう。 –

-1

機能を使用するmysql_num_rows。私はそれが何かのようになると思う

+0

はmysql_num_rowsは、多くの結果は、このクエリを返さないどのように多くの結果は、それらのそれぞれを持っているかが表示されます。 – kkszysiu

+0

質問を再読します –

0

SELECT 
    (SELECT COUNT(*) FROM numbers WHERE XXX LIKE '999' AND YYY RLIKE '[0-9]88[0-9]') AS 'CountA', 
    (SELECT COUNT(*) FROM numbers WHERE XXX LIKE '111' AND YYY RLIKE '[0-9]23[0-9]') AS 'CountB'