Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2007 Teil von Oktober

SELFHTML Forumsarchiv
MySQL Alias

Informationsseite
  1. Seite (SERVER) MySQL Alias von Martin Hein, 30. 10. 2007, 14:36
    • Seite (SERVER) MySQL Alias von Rouven, 30. 10. 2007, 14:45
      • Seite (SERVER) MySQL Alias von Martin Hein, 30. 10. 2007, 14:48
    • Seite (SERVER) MySQL Alias von dedlfix, 31. 10. 2007, 00:38
nach unten

MySQL Alias

Die folgende Nachricht zum Thema stammt von: Martin Hein, 30. 10. 2007, 14:36

Hallo Forum,

bei mir passiert es immer wieder, dass ich einen Alias nicht in
einer Bedingung verwednen darf. Anderseits habe ich aber das Gefühl,
dass es an anderen Stellen geht. Kann mir jemand sagen, wie ich
auf 'test' in meiner Bedingung zugreifen kann?

SELECT
`content_online_new`.`site_id` ,
`content_online_new`.`link_title` AS `test`

FROM `content_online_new`

WHERE `test` = 'Unsere Leistungen'

danke und

beste gruesse,
martin

nach obennach unten

MySQL Alias

Die folgende Nachricht zum Thema stammt von: Rouven, 30. 10. 2007, 14:45

Hello,

»» Kann mir jemand sagen, wie ich auf 'test' in meiner Bedingung zugreifen kann?
beim WHERE kann ich dir gerade nicht helfen, bei ORDER kann man es immer mal über den Index probieren:
ORDER BY 2, 1  -- sortiere erst nach der zweiten, dann nach der ersten Ergebnisspalte.


MfG
Rouven

--
-------------------
Eine Bilanz ist wie der Bikini einer Frau. Sie zeigt fast alles, aber verdeckt das Wesentliche  --  Günter Stotz, Regierungsdirektor des baden-württembergischen Wirtschaftsministeriums

nach obennach unten

MySQL Alias

Die folgende Nachricht zum Thema stammt von: Martin Hein, 30. 10. 2007, 14:48

hab's schon gefunden:

ORDER BY 'alias' funktioniert
WHERE 'alias' ist scheinbar nicht erlaubt.

beste gruesse,
martin

nach obennach unten

MySQL Alias

Die folgende Nachricht zum Thema stammt von: dedlfix, 31. 10. 2007, 00:38

echo $begrüßung;

»» bei mir passiert es immer wieder, dass ich einen Alias nicht in
»» einer Bedingung verwednen darf. Anderseits habe ich aber das Gefühl,
»» dass es an anderen Stellen geht.
»» SELECT
»» `content_online_new`.`link_title` AS `test`
»» FROM `content_online_new`
»» WHERE `test` = 'Unsere Leistungen'

Zuerst wird von einem Statement die FROM-Klausel (inklusive Joins) ausgewertet, um die zu verarbeitenden Tabellen zu ermitteln. Dann werden die Datensätze mit WHERE gefiltert und gegebenenfalls GROUPiert. Erst jetzt können die unter SELECT angegebenen Felder ausgewertet werden, weswegen auch erst jetzt Alias-Namen zur Verfügung stehen. Die können dann in HAVING- und ORDER-Klauseln verwendet werden.
Wenn du jetzt aber denkst: "Gut, nehm ich halt HAVING und lass WHERE weg", dann geht das vielleicht in MySQL gut, aber nicht unbedingt in anderen DBMS. HAVING hat die Aufgabe von den GROUPierten Datensätzen noch einige wegzufiltern und arbeitet deswegen einerseits (normalerweise) nur mit den unter GROUP BY angegebenen Felder oder Aggregatfunktionen zusammen, andererseits kann es auf keine Optimierungen, wie Indexe, zugreifen.


echo "$verabschiedung $name";

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2007 Teil von Oktober

© 1998-2006 Seite Impressum, Software: Classic Forum