SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Fortgeschrittene CSS-Techniken

Fortgeschrittene CSS-Techniken zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 18.12.2007, 22:44:13
DerSchatten DerSchatten ist offline
Anfänger
 
Registriert seit: Dec 2007
Ort: Wien
Beiträge: 7
select in select verschachteln

Kann mir jemand einen Tip geben was hier falsch ist:

PHP-Code:
 $sql "SELECT * FROM (
  SELECT
   Retro_Artikel.ID,
   Retro_Artikelmarke.Marke,
   Retro_Artikel.ArtikelBezeichnung,
   Retro_Artikeldetails.Bemerkungen
  FROM
   Retro_Artikelmarke
  RIGHT JOIN
   Retro_Artikel
  LEFT JOIN
   Retro_Artikeldetails
  ON
   Retro_Artikel.ID = Retro_Artikeldetails.Artikel_ID
  ON
   Retro_Artikelmarke.ID = Retro_Artikel.Marke_ID
  ORDER BY
   Retro_Artikel.ID DESC LIMIT 10)
  ORDER BY
   Retro_Artikelmarke.Marke"

Die Idee dahinter ist zuerst die letzten 10 Datensätze auszugeben und diese dann nach "Marke" zu sortieren.
Es erscheint keine Fehlermeldung jedoch auch keine Ausgabe.
Ich habe es auch schon auf diese Art probiert:

PHP-Code:
        $sql1 "SELECT
            Retro_Artikel.ID,
            Retro_Artikelmarke.Marke,
            Retro_Artikel.ArtikelBezeichnung,
            Retro_Artikeldetails.Bemerkungen
        FROM
            Retro_Artikelmarke
        RIGHT JOIN
            Retro_Artikel
        LEFT JOIN
            Retro_Artikeldetails
        ON
            Retro_Artikel.ID = Retro_Artikeldetails.Artikel_ID
        ON
            Retro_Artikelmarke.ID = Retro_Artikel.Marke_ID
        ORDER BY
            Retro_Artikel.ID DESC LIMIT 10"
;
            
        
$sql2 "SELECT '.$sql1.'
        ORDER BY
            Retro_Artikelmarke.Marke"

mit dem gleichen Ergebnis.
Mit Zitat antworten
  #2  
Alt 18.12.2007, 22:57:05
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: select in select verschachteln

Zitat:
Zitat von DerSchatten Beitrag anzeigen
...
Es erscheint keine Fehlermeldung jedoch auch keine Ausgabe.
...
Willkommen hier im Forum!


Hast Du mal die Error-Ausgabe auf E_ALL gesetzt?

Vllt. dauert die Abfrage aber auch nur zu lange und das Script bricht vorher einfach ab!?
Hast Du die Abfrage mal direkt auf der Db gemacht (z. Bsp. phpMyAdmin)?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3  
Alt 18.12.2007, 23:28:10
DerSchatten DerSchatten ist offline
Anfänger
 
Registriert seit: Dec 2007
Ort: Wien
Beiträge: 7
AW: select in select verschachteln

Zitat:
Hast Du die Abfrage mal direkt auf der Db gemacht (z. Bsp. phpMyAdmin)?
Habe ich gerade versucht:

Code:
SELECT * 
FROM ( SELECT Retro_Artikel.ID, Retro_Artikelmarke.Marke, Retro_Artikel.ArtikelBezeichnung, Retro_Artikeldetails.Bemerkungen
FROM ( Retro_Artikelmarke
RIGHT JOIN Retro_Artikel ON Retro_Artikelmarke.ID = Retro_Artikel.Marke_ID
)
LEFT JOIN Retro_Artikeldetails ON Retro_Artikel.ID = Retro_Artikeldetails.Artikel_ID
ORDER BY Retro_Artikel.ID DESC 
LIMIT 10 
)
ORDER BY Retro_Artikelmarke.Marke
Fehlermeldung:
#1248 - Für jede abgeleitete Tabelle muss ein eigener Alias angegeben werden

Damit kann ich leider nichts anfangen.
Mit Zitat antworten
  #4  
Alt 19.12.2007, 11:18:32
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: select in select verschachteln

Lösungsansatz:

PHP-Code:
SELECT FROM table as a WHERE a.bedingung erfuellt 
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #5  
Alt 19.12.2007, 11:59:53
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: select in select verschachteln

dann gib doch jeder abgeleiteten tabelle einen alias:

SELECT *
FROM
(
SELECT Retro_Artikel.ID, Retro_Artikelmarke.Marke, Retro_Artikel.ArtikelBezeichnung, Retro_Artikeldetails.Bemerkungen
FROM
( Retro_Artikelmarke
RIGHT JOIN Retro_Artikel ON Retro_Artikelmarke.ID = Retro_Artikel.Marke_ID
)
LEFT JOIN Retro_Artikeldetails ON Retro_Artikel.ID = Retro_Artikeldetails.Artikel_ID
ORDER BY Retro_Artikel.ID DESC
LIMIT 10
) AS `gurkensalat`
ORDER BY Retro_Artikelmarke.Marke
Mit Zitat antworten
  #6  
Alt 19.12.2007, 15:12:15
DerSchatten DerSchatten ist offline
Anfänger
 
Registriert seit: Dec 2007
Ort: Wien
Beiträge: 7
AW: select in select verschachteln

Was entspricht Gurkensalat?
Mit Zitat antworten
  #7  
Alt 19.12.2007, 20:54:44
DerSchatten DerSchatten ist offline
Anfänger
 
Registriert seit: Dec 2007
Ort: Wien
Beiträge: 7
AW: select in select verschachteln

Das "ORDER BY Retro_Artikelmarke.Marke" am Schluss bringt eine Fehlermeldung:
Unbekannte Tabelle 'Retro_Artikelmarke' in 'order clause'

Nach dem AS wird anscheinend kein Befehl mehr verarbeitet.
Mit Zitat antworten
  #8  
Alt 19.12.2007, 22:22:13
DerSchatten DerSchatten ist offline
Anfänger
 
Registriert seit: Dec 2007
Ort: Wien
Beiträge: 7
AW: select in select verschachteln

Ok, jetzt hab ichs!

Danke!
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Select mit Where-Clause aus Variable/Array RoSt MySQLi/PDO/(MySQL) 7 01.08.2006 13:44:02
Probleme mit PHP und mySQL, Select xy as yz funktioniert nicht KickMuck MySQLi/PDO/(MySQL) 1 04.03.2006 13:24:31
To Many Connections ProGamer11 PHP Grundlagen 0 19.06.2003 00:52:56
Select verschachteln? Sunny PHP für Fortgeschrittene und Experten 5 04.02.2003 09:08:33
Ich willst jetzt wissen - Select * oder nicht Select * CyberAge PHP Grundlagen 22 13.08.2002 18:40:46


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:27:02 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt