Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] sql verkürzen, eventuell view ermöglichen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] sql verkürzen, eventuell view ermöglichen

    Hallo zusammen

    Ich möchte gerne meine Datenbank optimieren. Hätte 3 Fragen:

    1.) Kann man das untenstehende sql verkürzen oder optimieren? Wie?
    2.) Ich habe eine Stored Procedures erstellt. Könnte man das SQL so verändern, dass ich daraus eine View erstellen kann? View's erlauben drum keine subselects.
    3.) Kann ich einen DB-User anlegen der nur Zugriff auf die erstellte Stored Procedure hat? Nur falls der Code für eine View nicht optimiert werden könnte.

    -> Es handelt sich um eine MySQL Datenbank.

    PHP-Code:
    CREATE PROCEDURE getKursDaten()
    SELECT a.data as tagb.data as datumc.data as zeitd.data as titel
       FROM 
    (
            
    select from field_veranstaltungen_tag where pages_id in(select id from pages where parent_id=1024 and status=1)
        ) 
    a,
        (
            
    select from field_veranstaltungen_datum where pages_id in(select id from pages where parent_id=1024 and status=1)
        ) 
    b,
        (
            
    select from field_veranstaltungen_uhrzeit where pages_id in(select id from pages where parent_id=1024 and status=1)
        ) 
    c,
        (
            
    select from field_title where pages_id in(select id from pages where parent_id=1024 and status=1)
        ) 
    d
        where a
    .pages_id=b.pages_id
        
    and a.pages_id=c.pages_id
        
    and a.pages_id=d.pages_id

    Währe sehr dankbar um Eure mithilfe!


  • #2
    Ist das nicht eigentlich nur

    PHP-Code:
    SELECT
        a
    .data as tag,
        
    b.data as datum,
        
    c.data as zeit,
        
    d.data as titel 
    FROM
        pages p
    INNER JOIN
        field_veranstaltungen_tag a ON a
    .pages_id p.id
    INNER JOIN
        field_veranstaltungen_datum b ON b
    .pages_id p.id
    INNER JOIN
        field_veranstaltungen_uhrzeit c ON c
    .pages_id p.id
    INNER JOIN
        field_title d ON d
    .pages_id p.id
    WHERE
        p
    .parent_id 1024
        
    AND
        
    p.status 
    ? Ich habe jetzt natürlich keine Daten zum testen.
    Standards - Best Practices - AwesomePHP - Guideline für WebApps

    Kommentar


    • #3
      @rkr
      Danke vielmals! Klappt wunderbar!

      Kommentar

      Lädt...
      X