簡體   English   中英

在同一JOIN中的同一表中選擇多個行

[英]Selecting multiple rows in same table in the same JOIN

圖中是我現在的餐桌情況:

表 在這種情況下,當前的中心表是tblJob ,這里定義了我需要的所有內容(並非圖中所有內容)。

地址表需要返回2個值(公司1個和作業本身1個)。 我現在唯一需要做的就是添加公司地址(工作地址已經在我的查詢中)我的查詢已經像這樣:

SELECT
tblJob.jobID,
tblJob.amount        AS jobAmount,
tblJob.extraInfo     AS jobExtraInfo,
tblJob.views         AS jobViews,
tblJob.description   AS jobDescription,
tblJob.dateCreated   AS jobDateCreated,
tblJobFunction.jobFunctionID,
tblJobFunction.jobFunction,
tblAddress.zipcode   AS jobAddress,
tblAddress.city      AS jobCity,
tblAddress.street    AS jobStreet,
tblAddress.number    AS jobNumber,
tblAddress.bus       AS jobBus,
tblCountry.countryID AS jobCountryID,
tblCountry.country   AS jobCountry,
tblCountry.areaCode  AS jobAreaCode,
tblCompany.companyID,
tblCompany.name,
tblCompany.email,
tblCompany.GSM,
tblCompany.phoneNumber,
tblCompany.photoURL  AS companyPhotoURL,
tblCompany.VATNumber,
tblCompany.websiteURL,
tblEvent.eventID,
tblEvent.event,
tblEvent.description AS eventDescription,
tblEvent.startDate   AS eventStartDate,
tblEvent.endDate     AS eventEndDate,
tblEvent.facebookURL,
tblEvent.photoURL    AS eventPhotoURL,
tblEvent.views       AS eventViews,
tblEvent.dateCreated AS eventDateCreated
FROM tblJob
JOIN tblAddress ON tblAddress.addressID = tblJob.addressID
JOIN tblCountry ON tblAddress.countryID = tblCountry.countryID
JOIN tblJobFunction ON tblJob.jobFunctionID = 
                       tblJobFunction.jobFunctionID
JOIN tblCompany ON tblJob.companyID = tblCompany.companyID
LEFT JOIN tblEvent ON tblJob.eventID = tblEvent.eventID

現在的問題是:如何在同一查詢中添加公司的地址?

根據需要多次使用地址表,但是每次必須給它一個新的別名:

FROM tblJob
JOIN tblAddress ON tblAddress.addressID = tblJob.addressID
JOIN tblCountry ON tblAddress.countryID = tblCountry.countryID
JOIN tblJobFunction ON tblJob.jobFunctionID =  tblJobFunction.jobFunctionID
JOIN tblCompany ON tblJob.companyID = tblCompany.companyID

JOIN tblAddress a2 ON a2.addressID = tblCompany.addressID

LEFT JOIN tblEvent ON tblJob.eventID = tblEvent.eventID

也許更像這樣:

SELECT JobAddress.street, CompanyAddress.street
FROM tblJob
JOIN tblAddress JobAddress ON JobAddress.addressID = tblJob.addressID
JOIN tblCompany ON tblJob.companyID = tblCompany.companyID
JOIN tblAddress CompanyAddress ON CompanyAddress.addressID = tblCompany.addressID

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM