2015-11-06 53 views
0

如何添加这个...如何将此左连接添加到我的查询中?

LEFT JOIN quote_header ON 
    (job_header.job = '0' + LEFT(quote_header.user_5, 5)) 

要这个......

SELECT 
    job_header.job, 
    job_header.suffix, 
    job_header.customer, 
    job_header.description, 
    job_header.comments_1, 
    job_header.date_due, 
    job_header.part, 
    job_header.customer_po, 
    job_header.date_closed, 
    job_header.flag_hold, 
    wo_user_flds.user_7, 
    wo_user_flds.user_3, 
    wo_user_flds.user_6, 
    wo_user_flds.user_5, 
    wo_user_flds.user_2 

FROM job_header 

LEFT JOIN wo_user_flds ON 
    (job_header.job = wo_user_flds.job) AND 
    (job_header.suffix = wo_user_flds.suffix) 

WHERE job_header.date_closed = '000000' 

AND LENGTH(job_header.job) > '5'; 

我尝试的第一个左后立即将其加入,但它只是崩溃。

+3

你得到的错误是什么? –

+1

你得到的错误或结果是什么? – christiandev

+1

我没有收到错误,它只是挂起/崩溃。 – Slime

回答

0

也许尝试使用CONCAT,而不是“0” + LEFT(......

OR

也许你可以尝试把quote_header到一个临时表与修改后的字段,然后加入到...

SELECT CONCAT('0', LEFT(quote_header.user_5, 5)) as quoteHeaderUser_5, field2, field3 etc etc 
INTO #tmpQH 
FROM quote_header 

,那么你可以有....

LEFT JOIN #tmpQH ON 
    (job_header.job = quoteHeaderUser_5) 
0

尝试创建一对夫妇的意见...

视图1

SELECT 
    ... 

FROM job_header 
WHERE job_header.date_closed = '000000' 
AND LENGTH(job_header.job) > '5'; 

视图2

SELECT 
    ..., 
    '0' + LEFT(quote_header.user_5, 5) as 'FirstFiveOfUser5' 
from quote_header 

然后,您可以加入这样的...

SELECT 
    job_header.job, 
    job_header.suffix, 
    job_header.customer, 
    job_header.description, 
    job_header.comments_1, 
    job_header.date_due, 
    job_header.part, 
    job_header.customer_po, 
    job_header.date_closed, 
    job_header.flag_hold, 
    wo_user_flds.user_7, 
    wo_user_flds.user_3, 
    wo_user_flds.user_6, 
    wo_user_flds.user_5, 
    wo_user_flds.user_2 

FROM View1 as job_header 

LEFT JOIN wo_user_flds ON 
    (job_header.job = wo_user_flds.job) AND 
    (job_header.suffix = wo_user_flds.suffix) 
LEFT JOIN View2 as quote_header ON 
    (job_header.job = quote_header.FirstFiveOfUser5) 

这可能帮助演出。