Seite 1 von 1

Select Abfrage in phpmyadmin

Verfasst: Sa, 13.05.2017 10:15
von Ennstaler
Ich weiß, dass diese Frage nicht viel mit Base zu tun hat, aber ich bin etwas ratlos. Bei meiner MariaDB ruf ich in Base folgenden Abfrage auf, die auch funktioniert.

Code: Alles auswählen

SELECT ( SELECT COUNT( `Punkte` )

FROM `Turnier` WHERE `Punkte` > `a`.`Punkte` AND `Alter`  <= ( SELECT `Altersklassen` FROM `filter_altersklasse` 
WHERE `Zeile` = 3 )  ) + 1 AS `Rang`, `Nachname`, `Vorname`, `Geschlecht`, `Alter`, `Punkte`
FROM `Abfrage_Turnier_Alter` AS `a`

WHERE `Alter` <= ( SELECT `Altersklassen` FROM `filter_altersklasse` WHERE `Zeile` = 3 )

ORDER BY `Punkte` DESC
Wenn ich diese Abfrage direkt in phpmyadmin ausführen möchte, erhalte ich immer die Meldung "#1146 - Tabelle 'bsv.abfrage_turnier_alter' existiert nicht". Aber die Tabelle existiert. Woran könnte das liegen?

Besten Dank für die Bemühungen,
Peter

Re: Select Abfrage in phpmyadmin

Verfasst: Sa, 13.05.2017 17:12
von F3K Total
Peter,
die Abfragen kennt die MariaDB nicht, sie befinden sich in der Base-Datei (.odb)
Ansichten müssten funktionieren, tun es zumindest mit der HSQL-Datenbank, wenn sie gesplittet, als Backend verwendet wird.
Gruß R

Re: Select Abfrage in phpmyadmin

Verfasst: Sa, 13.05.2017 17:23
von Ennstaler
Achso... ich bin beim Lernen und Ausprobieren.

Nur ist mir nicht klar, warum diese Abfrage einer View in phpmyadmin funktioniert, wenn ich diesen direkt in SQL eingebe.

Code: Alles auswählen

SELECT ( SELECT COUNT( `punkte` ) FROM `teilnehmer` 
WHERE `punkte` > `a`.`punkte`
 AND `alter` >= 15 AND `geschlecht` LIKE 'm' 
 AND `bogen` LIKE 'LangB') + 1 AS `rang`,`nachname`, `vorname`, `wohnort`, `geschlecht`, `alter`, `bogen`, `punkte`, `kills`, `verein`
 FROM `teilnehmer` AS `a` 
WHERE `alter` >= 15 AND `geschlecht` LIKE 'm' AND `bogen` LIKE 'LangB' 
AND `punkte` 
ORDER BY `punkte` DESC, `kills` DESC
Na, werde weiter studieren.
Beste Grüße, Peter

Re: Select Abfrage in phpmyadmin

Verfasst: So, 14.05.2017 08:34
von Toxitom
Hallo Peter,

ich schätze, es liegt an Deiner Schreibweise.

In nativ SQL werden vorhandene Spaltennamen sowie Tabellennamen nicht maskiert, also ohne Hochkomma geschrieben. Sie sind aber auf jeden Fall Case-Sensitiv! Einfache Hochzeichen hingegen "maskieren" Stings (also Texte).
LO und Base ist hier recht tollerant und setzt intern diese Maskierungen intern zurück.

Also, versuche es einfach mal ohne die Maskierungen, dort wo sie nicht gebraucht werden!

Viele Grüße
Tom

Re: Select Abfrage in phpmyadmin

Verfasst: So, 14.05.2017 16:57
von Ennstaler
Danke Tom für diese Info, es lag tatsächlich an der Schreibweise.
Beste Grüße,
Peter