2011-04-24 157 views
1
SELECT 
    tbl_vehicle_models.model_name AS Vehicle_Model, 
    tbl_vehicle_models.manufacturer AS Manufacturer, 
    tbl_jobs.vehicle_registration_number AS Registration_Number, 
    tbl_customers.first_name + " " + tbl_customers.last_name AS Customer_Name, 
    tbl_customers.address AS Address, 
    tbl_customers.contact_no AS Contact_Number, 
    tbl_jobs.cost_charged AS Cost, 
    tbl_jobs.was_accident AS Was_Accident, 
    tbl_jobs.was_towed AS Was_Towed, 
    tbl_jobs.job_call_time AS Call_Time, 
    tbl_jobs.job_arrival_time AS Arrival_Time, 
    tbl_jobs.job_leaving_scene_time AS Leaving_Time, 
    tbl_places.place_name AS Place 
FROM 
    tbl_jobs 
    INNER JOIN tbl_vehicle_models 
     ON (tbl_vehicle_models.ID = tbl_jobs.vehicle_model) 
    INNER JOIN tbl_customers 
     ON (tbl_customers.ID = tbl_jobs.customer_id) 
    INNER JOIN tbl_places 
     ON (tbl_places.ID = tbl_jobs.job_place) 

此查詢有什麼問題? (v.ID = j.vehicle_model) INNER JOIN tbl_customers c ON(c.id = j.customer_id) INNER JOIN tbl_places p ON(p.ID = j.job_place'MS Access查詢問題

編輯:這解決了我的問題:?

SELECT tbl_vehicle_models.model_name, tbl_vehicle_models.manufacturer, tbl_jobs.vehicle_registration_number, tbl_customers.first_name & " " & tbl_customers.last_name AS Expr1, tbl_customers.address, tbl_customers.contact_no, tbl_jobs.cost_charged, tbl_jobs.was_accident, tbl_jobs.was_towed, tbl_jobs.job_call_time, tbl_jobs.job_arrival_time, tbl_jobs.job_leaving_scene_time, tbl_places.place_name 
FROM ((tbl_jobs INNER JOIN tbl_vehicle_models ON tbl_jobs.vehicle_model = tbl_vehicle_models.ID) INNER JOIN tbl_customers ON tbl_jobs.customer_id = tbl_customers.ID) INNER JOIN tbl_places ON tbl_jobs.job_place = tbl_places.ID; 

回答

0

這解決了我的問題:

SELECT tbl_vehicle_models.model_name, tbl_vehicle_models.manufacturer, 
    tbl_jobs.vehicle_registration_number, tbl_customers.first_name & " " & 
    tbl_customers.last_name AS Expr1, tbl_customers.address, tbl_customers.contact_no, 
    tbl_jobs.cost_charged, tbl_jobs.was_accident, tbl_jobs.was_towed, tbl_jobs.job_call_time, 
    tbl_jobs.job_arrival_time, tbl_jobs.job_leaving_scene_time, tbl_places.place_name 

    FROM ((tbl_jobs 
    INNER JOIN tbl_vehicle_models ON tbl_jobs.vehicle_model = tbl_vehicle_models.ID) 
    INNER JOIN tbl_customers ON tbl_jobs.customer_id = tbl_customers.ID) 
    INNER JOIN tbl_places ON tbl_jobs.job_place = tbl_places.ID; 
0

你肯定v.IDj.vehicle_model具有相同的數據類型

看起來像v.ID是一個整數,j.vehicle_model字符串

我覺得這個問題發生在您嘗試使用不兼容的操作數數據類型的操作符時。

編輯: 然後,嘗試改變

c.first_name + " " + c.last_name 

c.first_name & " " & c.last_name 

我認爲這是這個級聯的一個問題

+0

NOP es我重新檢查了它,兩者都是整數 – codefreak 2011-04-24 14:02:30

+0

在Access中,您應該使用&連接字符串。我已編輯我的回答 – 2011-04-24 14:09:48

+0

它也不起作用。我刪除了所有內部聯接語句,並寫入了tbl_jobs,tbl_vehicle_models,tbl_customers,tbl_places和它的工作原理。但包括內部連接會導致錯誤。 – codefreak 2011-04-24 14:21:47