| (Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI... |
Diskussion: Select und Funktion - Frage im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Hallo Leute, habe gerade ein Problem mit einem SQL Statement wo ich leider trotz Doku nicht wirklich zu einer ...
![]() |
| | #1 (permalink) | |
| Registriert seit: 11.08.07 ![]() Likes: 0 | Anzeige Hallo Leute, habe gerade ein Problem mit einem SQL Statement wo ich leider trotz Doku nicht wirklich zu einer Lösung komme :( Um folgendes Statement geht es Zitat:
In der Tabelle "ticket" sind Support-Tickets gespeichert In der Tabelle user_ticket wird ein Ticket mit dem Ersteller referenziert. Ich lese anhand der User_ID alle Tickets aus die der Benutzer erstellt hat. Dies klappt alles soweit. Nun ist es aber so das das Feld "status", "priority" und "project" nur eine ID des jeweiligen Status, Prio oder Projects zurück liefert. Ich würde nun gerne im selben Select Statement bereits die konkreten Status, Prio -> Namen auslesen die in den Tabellen "status" und "priority" stehen. z.B: bekomme ich priority = 1 zurück ich würde aber gerne "wichtig" zurück bekommen. In der Tabelle priority ist 1 = wichtig. Leider hakt es bei mir gerade wie man so etwas löst. Bei Project wird das ganze noch ein bischen komplizierter den projects ist notgedrungen auf einer anderen Datenbank (selber Server) gespeichert. Ich gehe davon aus dies kann ich nicht innerhalb 1 SQL Statements lösen? (Benutzer hat Rechte auf beide Datenbanken) Zur guter letzt würde ich gerne das Feld "deadline" von SQL formatiert zurück bekommen, es liefert nämlich einen Timestamp. Bis lang habe ich keine SQL-Funktion gefunden die es mir ermöglicht das es mir ein Datum nach Schema ("d.m.y") zurück gibt. Danke schon mal für jegliche Hilfe :) | |
| | |
| | #2 (permalink) | |||
| Hallo, Zitat:
Code: SELECT t.id, t.title, t.project, p.prio_name, t.deadline, s.status_name FROM ticket t, prio p, status s WHERE t.priority = p.prio_id AND t.status = s.status_id AND t.id IN (SELECT ticket_id FROM user_ticket WHERE user_id = '".$userID."' AND intern = '".$intern."'); Wenn du mehr wissen willst, lies dir in der MySQL-Doku mal was zu "JOIN" durch, das ist nämlich genau das was du suchst. Zitat:
Code: select a.*, b.* from Tabelle1 a, Anderedatenbank.Tabelle2 b WHERE ... Zitat:
Code: SELECT FROM_UNIXTIME(datum, '%d.%m.%Y') from tabelle ...
__________________ Wenn keiner zuschaut, teile ich heimlich durch Null! Meine Homepage: Planet Metax | meine Bilder: DeviantArt | Twitter | ||||
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Themenstarter Registriert seit: 11.08.07 ![]() Likes: 0 | Hey, vielen Dank für deine Ausführliche Antwort. Da muss ich mich nun erstmal rein denken in das, für mich, sehr komplexe Select Statement Danke |
| | |
| | #4 (permalink) | |
![]() Registriert seit: 17.01.06 ![]() Likes: 7 | Zitat:
Code: sprintf('SELECT t.id, t.title, t.project, p.prio_name, t.deadline, s.status_name
FROM ticket AS t
JOIN prio AS p
ON t.priority = p.prio_id
JOIN status AS s
ON t.status = s.status_id
WHERE t.id IN
(SELECT ticket_id FROM user_ticket WHERE user_id = %d AND intern = %d);', $userID, $intern); | |
| | |
| | #5 (permalink) |
| Themenstarter Registriert seit: 11.08.07 ![]() Likes: 0 | Guten Morgen, habt tausend Dank Ihr beiden ![]() Nun klappt alles hervorragend und ich hab wieder einiges gelernt. ![]() ?dit: ------------- Mh nun hab ich schon wieder ein Problem und kann es nicht lösen ![]() Die Join Beispiele aus dem Internet helfen mir hier leider nicht weiter. Folgendes Statement: Code: SELECT t.id, t.title, FROM_UNIXTIME(t.create_date, '%d.%m.%Y') as create_date, t.description, t.media, FROM_UNIXTIME(t.deadline, '%d.%m.%Y') as deadline, p.priority_name, s.status_name, k.projektname,ku.vname, ku.nname FROM ticket AS t JOIN priority AS p ON t.priority = p.id JOIN status AS s ON t.status = s.id JOIN db2.projekte AS k ON t.project = k.id JOIN db2.ansprechpartner AS ku ON user.ap_id = ku.id WHERE t.id = '3' #1054 - Unknown column 'user.kbm_id' in 'on clause' Darauf hin habe ich es wie folgt versucht: Code: SELECT t.id, t.title, FROM_UNIXTIME(t.create_date, '%d.%m.%Y') as create_date, t.description, t.media, FROM_UNIXTIME(t.deadline, '%d.%m.%Y') as deadline, p.priority_name, s.status_name, k.projektname,ku.vname, ku.nname FROM ticket AS t, user AS u JOIN priority AS p ON t.priority = p.id JOIN status AS s ON t.status = s.id JOIN db2.projekte AS k ON t.project = k.id JOIN db2.ansprechpartner AS ku ON u.ap_id = ku.id WHERE t.id = '3' #1054 - Unknown column 't.priority' in 'on clause' Ich habe auch dran gedacht es so zu versuchen.. Code: .... FROM ticket AS T LEFT JOIN user ON ticket und user. Nur zwischen den Tabellen ticket -> user_ticket und user_ticker -> user. Kann mir noch mal jemand auf die Sprünge helfen? Vielen Dank schon mal. |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| komplexerer select | easteregg | (Web-) Design und webbasierte Sprachen | 11 | 10.12.08 13:28 |
| Funktionsweise SELECT | Dawen | Code Kitchen | 2 | 31.05.07 15:28 |
| Funktion zum prüfen ob Funktion erlaubt ist | Chatter | (Web-) Design und webbasierte Sprachen | 5 | 21.01.07 14:11 |
| JS: | mido | (Web-) Design und webbasierte Sprachen | 4 | 02.08.02 17:02 |