Dear visitor, welcome to Coder Forum.
If this is your first visit here, please read the Help. It explains in detail how this page works.
To use all features of this page, you should consider registering.
Please use the registration form, to register here or read more information about the registration process.
If you are already registered, please login here.
Problem mit einer Query
Hallo,
ich habe folgendes Problem. Ich möchste Infos aus mehreren Tabelle auslesen. Dies Funktioniert auch soweit, aber ich habe das Problem, wenn ein User kein Eintrag in der tabelle company_jobtime hat wird nichts mehr ausgegeben.
|
PHP Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
// Mitarbeiterinfos auslesen
$companyWorker = mysql_query("
SELECT
DISTINCT(b.userName),
b.userID,
b.wbbUserID,
c.companyID,
c.departmentNameShort,
d.rankName,
e.jobTime
FROM
company_user as a,
user_info as b,
company_departments as c,
company_ranks as d,
company_jobtime as e
WHERE
a.userID=b.userID AND
a.departmentID=c.departmentID AND
a.userJobLevel=d.jobLevel AND
c.companyID=d.companyID AND
c.companyID=$getCompanyID AND
e.userID=b.userID AND e.companyID=c.companyID
ORDER BY
$getSortField $getSortOrder"
);
|
Gruß
This post has been edited 2 times, last edit by "stedoo" (Jan 20th 2012, 4:20pm)
wenn du trotzdem andere einträge ausgeben möchtest, dann musst du mit left-/right join arbeiten
aber es gibt doch nicht für jeden User einen Eintrag in company_jobtime
Ich steh gearde aufen schlauch. Könnte mir jemand mal ein Beispiel in meine Query machen
Hier ein bsp
|
PHP Quellcode
|
1
|
'SELECT u.*, c.* FROM ' . USERS . ' u RIGHT JOIN ' . ARCADE_CAT . ' c ON (u.user_id = c.user_id)
|
Wenn zb keine User ID in der Tabelle ARCADE_CAT eingetragen ist gibt er die Arcade Tabelle dennoch aus.
könnte das mal jemand in meine query einbauen. ich versteh das gerade überhaupt nicht
könnte das mal jemand in meine query einbauen. ich versteh das gerade überhaupt nicht
hast du mein link angesehen, da ist es alles super beispielhaft erklärt
ja hab ich. leider versteh ich das nicht
was genau verstehst du nicht? was ein join ist? wie man tabellen joint?
|
PL/SQL Code
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
SELECT
*
FROM
company_user AS a,
left join user_info AS b ON a.userID=b.userID
left join company_departments AS c ON a.departmentID=c.departmentID
left join company_ranks AS d ON c.companyID=d.companyID
left join company_jobtime AS e ON e.companyID=c.companyID AND e.userID=b.userID
WHERE
c.companyID=$getCompanyID
ORDER BY
$getSortField $getSortOrder"
|
ungefähr so
edit: funzt nun. Danke dir
This post has been edited 1 times, last edit by "stedoo" (Jan 20th 2012, 7:48pm)