2012-10-08 3 views
0

두 값을 기반으로 두 테이블을 결합하려고합니다. 지금까지 가지고 있지만 %을 사용하자마자 SQL 오류가 발생합니다.LIKE 연산자를 사용하여 두 테이블 조인

SELECT downloads.d_key, payer_email 
FROM paypal_log 
INNER JOIN 
     downloads 
ON  downloads.d_key LIKE "%" + paypal_log.custom + "%" 

downloads.d_keypaypal_log.custom 내에서 될 것입니다.

감사의 말.

+1

'좋아요'라고 생각하지 않습니다. 'WHERE' 절에서 사용해야합니다. – Bernard

+1

이것은 여기에 이미 묻혀있는 것 같습니다 http://stackoverflow.com/questions/1930809/mysql-join-query-using-like –

+1

거기에 'paypal_log.custom'의 키를 구문 분석하는 방법은 무엇입니까? d_key가 11 일 경우 111, 1111 등의 다른 키를 찾을 수 있습니다. 가입하기 좋은 방법은 아닙니다. – msmucker0527

답변

0

나는 James Piggot의 링크를 받았다.

mysql join query using like?

는 위의 내 문제를 해결했다. 다른 해결책들 중 어느 것도 나를 위해 일하지 않았다.

0

SELECT 'one' + 'two' FROM DUAL 

을 시도하고 당신이 무엇을 얻을 참조하십시오.

LIKE concat('%', paypal_log.custom, '%') 
0

MySQL 연결 연산자는 ||입니다. 다른 사람들이 지적

SELECT downloads.d_key, payer_email 
FROM paypal_log 
INNER JOIN 
     downloads 
ON  downloads.d_key LIKE '%' || paypal_log.custom || '%' ; 

, 당신은 아마 매우 뭔가 잘못하고있다 : 당신은 또한 CONCAT() 기능을 사용할 수 있습니다.

+1

아주, 아주, 아주, 아주 틀렸어. 그러나 그것을 실행해야합니다. (실행하고 실행하고 실행해야합니다.) –

관련 문제