cybton.com
Über uns | Jobs | Werbung | Sitemap | AGB | Impressum | Hilfe ?
 Kostenlos anmelden)
Forum
Aktuellste Beiträge
Forenregeln

Community
BB-Codes
Tags
Chat
Suche (Web)
Wer ist online?
Top-User

Basar


Statistik
Mitglieder gesamt: 68122
Mitglieder online: 0
Gäste online: 0
mehr...

Anzeige

Thread: view oder join


11.06.2008 11:03 Uhr

 

Status: offline
hallo,


was macht bei einer mysql abfrage mehr sinn, ein view oder eine abfrage mit join´s?

bzw. von welchen kriterien hängt es ab was ich nehmen soll?

lg

der query mit join´s sieht so aus.
+ PHP:
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
30
31
32
33
34
35
36
37
$sql = "SELECT 
          wkz1.ART AS WKZ_ART,
          tb_ec_wed.BEMERK_WED,
          wkz1.STATUS_WKZ, 
          tb_ec_cab.STATUS_CAB, 
          tb_ec_pf.STATUS_PF, 
          tb_ec_wed.USER, 
          tb_ec_wed.DATUHR, 
          tb_ec_wed.ID as wedid,
          wkz1.BEZ_WKZ as bez_aktu_wkz,
          wkz2.BEZ_WKZ as bez_orig_wkz,
          wkz3.WKZ_COUNT as WKZ_COUNT,
          tb_ec_pf.SERNUM_PF,
          tb_ec_cab.SERNUM_CAB,
          tb_ec_zone.BEZ_Z,
          wkz1.ID AS wkzid,
          tb_ec_pf.ID AS pfid,
          tb_ec_cab.ID AS cabid,
          wkz1.BEZ_WKZ AS tt,
          tb_ec_hmi.ID AS hmiid,
          tb_ec_hmi.BEZ_HMI,
          tb_agid.ID as AGIDID,
          tb_agid.AGID
 
          FROM 
        tb_ec_wed 
          LEFT JOIN tb_ec_wkz as wkz1 ON ID_WKZ = wkz1.ID
          LEFT JOIN tb_ec_wkz as wkz2 ON ID_WKZ_ORIG = wkz2.ID
          LEFT JOIN tb_ec_wkz as wkz3 ON ID_WKZ = wkz3.ID              
          LEFT JOIN tb_ec_pf ON ID_PF = tb_ec_pf.ID 
          LEFT JOIN tb_ec_cab ON ID_CAB = tb_ec_cab.ID
          LEFT JOIN tb_ec_zone ON ID_ZONE = tb_ec_zone.ID
          LEFT JOIN tb_ec_hmi ON ID_HMI = tb_ec_hmi.ID
          LEFT JOIN tb_agid ON tb_agid.ID = tb_ec_wed.ID_AGID  
          WHERE LOCATION_WED = '$location_url'
          $gernot
          ORDER BY $sort $order";
___________________________
ich muß gar nix....
http://www.tomig.at
http://www.cybton.com/tutorials_show,tut,1385.html
11.06.2008 11:34 Uhr

 

bmk
Moderator
Status: offline
Bist du sicher, dass du so viele Joins brauchst?
Aus den kryptischen Benenungen deiner Felder kann man ja praktisch nichts herauslesen, sorry.

Die Variable $gernot ist höchstens für ein "WTF...?!" gut.
Und dass du sowohl $sort als auch $order hast, zwingt mir auch ein Lächeln ab.
___________________________
Let's code responsibly...
Webcrawler -- Portal für Dirigenten -- Musikverein Königstetten
11.06.2008 11:44 Uhr

 

Status: offline
ja brauch ich, da ich die daten aus 7 verschiedenen tabellen raushole. und ich kenne nur den joinweg um die daten zusammenzuführen.

$gernot ist nur ein schnipsel SQL wenn nur ein spezieller datensatz gewünscht wird. nix aufregendes.
PHP:
1
 $gernot = "AND wedid = '$ID'";
die bennenungen sind eigentlich net so schwer zu lesen.... aber als schöpfer kann man das bald sagen.  :glad: 
spielt auch nicht so eine rolle.


Zitat:
Und dass du sowohl $sort als auch $order hast, zwingt mir auch ein Lächeln ab.


erzähl...
___________________________
ich muß gar nix....
http://www.tomig.at
http://www.cybton.com/tutorials_show,tut,1385.html
11.06.2008 12:18 Uhr

 

bmk
Moderator
Status: offline
Naja, aber vielleicht wäre es performancemäßig besser, manche Tabellen gejointe einfach im Vorhinein ganz auszulesen, in ein Array zu speichern und bei der Ausgabe dann die entsprechenden Felder anzuzeigen. Dann kannst du sie aus dem Join herausnehmen.

Zitat:
die bennenungen sind eigentlich net so schwer zu lesen

WKZ_ART, BEMERK_WED, STATUS_WKZ, STATUS_PF, DATUHR, wedid, bez_aktu_wkz, bez_orig_wkz, SERNUM_PF, SERNUM_CAB, BEZ_Z, wkzid, pfid, tt, hmiid, BEZ_HMI, AGIDID, AGID
Das nennst du "net so schwer zu lesen"?!? Auf welchem Planeten lebst du denn?
Sorry, aber das ist ja echt ne Katastrophe!  :tear:   :tear: 
___________________________
Let's code responsibly...
Webcrawler -- Portal für Dirigenten -- Musikverein Königstetten
11.06.2008 12:29 Uhr

 

Status: offline
an das hab ich auch schon gedacht, aber das sind so viele Daten und ich mag einfach net unbedingt mit dem array arbeiten. da mehrere Benutzer gleichzeitig an dern DB rumschrauben können ist es dann auch wieder eine frage der aktualität!

WKZ_ART = Werkzeug art = luftantrieb, elektronisch geregelt, akku
BEMERK_WED = Bemerkung in der tabelle in der die daten verheiratet werden
STATUS_WKZ = staus des werkzeuges, lager, einsatz, schrott, rep
DATURH = datum uhrzeit
wedid = ID des akteullen datensatzes aus der tabelle
SERNUM_CAB = Seriennummer des Kabels
BEZ_HMI = Bezeichnung des HMI (Human machine interface ein rechner)
AGID = Schraubstellennummer
 :wink: 
1 mal bearbeitet
___________________________
ich muß gar nix....
http://www.tomig.at
http://www.cybton.com/tutorials_show,tut,1385.html
11.06.2008 12:35 Uhr

 

bmk
Moderator
Status: offline
Zitat:
das sind so viele Daten und ich mag einfach net unbedingt mit dem array arbeiten.

Wieso nicht?

Zitat:
da mehrere Benutzer gleichzeitig an dern DB rumschrauben können ist es dann auch wieder eine frage der aktualität!

Nö, solange du die Arrays nicht zwischenspeicherst werden die ja pro Seitenaufruf komplett ausgelesen. Falls es hier ein Problem sein sollte, dass mehrere Personen gleichzeitig arbeiten, könntest du mit Locking a) das Problem umgehen und gleichzeitig b) die Performance erhöhen.

LG, bmk.
___________________________
Let's code responsibly...
Webcrawler -- Portal für Dirigenten -- Musikverein Königstetten
11.06.2008 12:46 Uhr

 

Status: offline
locking... mal schauen, wird es aber nicht werden.


array. ich weiß net, eine scheu gegenüber vielleicht.

mal eine testseite mit dem array machen.


Warum , erzähls mir...
Zitat:
Und dass du sowohl $sort als auch $order hast, zwingt mir auch ein Lächeln ab.
___________________________
ich muß gar nix....
http://www.tomig.at
http://www.cybton.com/tutorials_show,tut,1385.html
Ähnliche Threads Forum Ähnlichkeitsgrad
 Mysql zwei Tabellen verbinden Website & Webprogrammierung 2
 [gelöst] Fragen bezüglich MySQL Website & Webprogrammierung 1
 MYSQL Abfrage (Zählen auf Gleiche Spalten) Website & Webprogrammierung 1
 FTP wo und wie? Fragen zu cybton.com 1
 [Problem] MySQL mehrere Einträge gleichzeitig verändern geht nicht Website & Webprogrammierung 1
 MySQL nur für Localhost Software & Betriebssysteme 1
 Atomatic Mail Respond [For example: Brithday reminder] Website & Webprogrammierung 1
nach obennach oben

Copyright © 2008 cybton-network

Google
Partner: #Musik - Dein Internetradio - nexem. - .wir machen news - Your-Book.net - Dein kostenloses Gästebuch
ANEXIA - PHP Entwicklung - Dockers - s.Oliver Schuhe - Think Schuhe - der eigene Weg - Dorfen - Paul Green Schuhe - Bequeme Geox - Web-Entwicklung