하는

2016-06-24 2 views
0

내가 한 resulttable 3 개 열, result1, result2dateday에 두 쿼리의 결과를 결합하려는 쿼리, 쿼리는하는

SELECT COUNT(DISTINCT `cust`) AS result1, DATE(`date`) AS dateday 
FROM `salg_test` 
WHERE `saved` =0 
AND `is_void` =0 
GROUP BY dateday 
ORDER BY dateday DESC 

SELECT COUNT(DISTINCT `cust`) AS result2, DATE(`date`) AS dateday 
FROM `salg_test` 
WHERE `saved` =1 
AND `is_void` =0 
GROUP BY dateday 
ORDER BY dateday DESC 

내가 모두 결과에 의해 그룹화하려는 모순 변수는 dateday입니다.

답변

2

것은 같은 것을 할 수 있어야한다 : 당신의 PROMT 응답 후안에 대한

SELECT COUNT(DISTINCT CASE `saved` when 0 then `cust` else null end) AS result1 
, COUNT(DISTINCT CASE `saved` when 1 then `cust` else null end) AS result2 
, DATE(`date`) AS dateday 
FROM `salg_test` 
WHERE `is_void` =0 
GROUP BY dateday 
ORDER BY dateday DESC 
+0

정말 고마워요! PHPmyadmin을 사용하여 다음 오류를 반환하는 중 : 064 - SQL 구문에 오류가 있습니다. 올바른 구문이 'AND'is_void' = 0 근처에서 사용되도록 MySQL 서버 버전에 해당하는 설명서를 확인하십시오. GROUP BY dateday ORDER BY dateday DESC LIMIT 0, 30'5 번 줄에 어떤 팁이 있습니까? –

+0

죄송합니다. where 위치 조건을 삭제하고를 변경하는 것을 잊어 버렸습니다. 제 편집을 시도해보십시오. – Kateract

+0

물론! 나는 눈이 멀었다. 나 자신을 보았어 야했다. Kateract 대단히 고마워, 내가 필요한 것 :) –

0

방법 :

WHERE (`saved`= 1 OR `saved`= 0) 

또는 saved의 유일한 가능한 값은 1 또는 0 경우, 단지 모두 쿼리에서 해당 조건을 생략합니다.

+0

감사합니다 :) 난과'saved' = 0에 있어야 하나 개의 컬럼에있을 saved' = 1 '의 reults를 필요 다른 열, OR 조건으로 어떻게 관리 할 수 ​​있는지 알고 있습니까? –

+0

Kateract에서 원하는 검색어를 찾은 것 같습니다. 행운을 빕니다! –

+0

감사합니다. 예, Kateracts 대답은 내가 내놓은 것입니다 :) –