0

Gibt es in NINUX eine Select abfrage

Jetzt noch eine Frage,

ich habe eine Tabelle mit Projekten, darin habe ich auswahlfelder für Person und Funktionen und ein Datum.

In einer Weiteren Tabelle stehen alle Personen mit der jeweiligen Funktion und derm Stundensatz der hier für ; ab einem Datum in das Projekt kopiert werden soll.

Ich habe mal folgendes Probiert:

SELECT (Stundenlohn := Funktionen.Konditionen.Stundenlohn)
where Funktionen.'Kürzel' = Funktionen.Konditionen.Funktionen.'Kürzel'
and Kontakte.Name = Kontakte.Konditionen.Kontakte.Name
and first(Funktionen.Konditionen.'Gültig ab') <= Datum
end

da ich blutiger Anfänger bin und nur etwas PHP erfahrung mitbringe ... wo liegt mein feheler?

 

4 Antworten

null
    • Micha
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Ok, nach vielem stöbern hier bin ich zwar auf vieles gestoßen was mich auch echt begeistert hat und sogar Funktioniert.

    Nur mein select bekomme ich nicht zum laufen.

    Das hier oben ist sehr "SQL" belastet ja.

    Was möchte ich machen...

    Ich erzeuge ein Projekt (Datensatz) wähle eine PERSON und TÄTIGKEIT aus einer jeweils anderen Tabelle aus wenn nun beide Felder ausgewählt wurden soll z.B. der Stundensatz aus einer dritten Tabelle PREISE geholt werden.

    PREISE ist mit PERSON & TÄTIGKEIT verknüpft hat zusäzlich ein Feld Datum ab wann der Preis an zu wenden ist und ein Feld Preis.

    Wie kann ich diesen Datensatz finden und den Preis schon mal eintragen lassen sobald die Person ausgewählt wurde?

    • Leonid_Semik
    • vor 5 Jahren
    • Gemeldet - anzeigen

    hallo Micha,

    als Trigger nach Änderung bei Felder Person UND Tätigkeit:

    ---

    let my=this;

    if PERSON and 'TÄTIGKEIT' then 

    let myDate:=max(select PREISE where PERSON=my.PERSON and 'TÄTIGKEIT'=my.'TÄTIGKEIT' and Datum<=my.Datum);

    my.Preis:=first(select PREISE where PERSON=my.PERSON and 'TÄTIGKEIT'=my.'TÄTIGKEIT' and Datum=myDate).Preis

    end

    ---

    Leo

    • Leonid_Semik
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Sorry, Fehler:

     

    let my=this;

    if PERSON and 'TÄTIGKEIT' then 

    let myDate:=max((select PREISE where PERSON=my.PERSON and 'TÄTIGKEIT'=my.'TÄTIGKEIT' and Datum<=my.Datum).Datum);

    my.Preis:=first(select PREISE where PERSON=my.PERSON and 'TÄTIGKEIT'=my.'TÄTIGKEIT' and Datum=myDate).Preis

    end

    • Micha
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Cool Danke

    wollte schon Posten das es bei mir nicht funktioniert aber let my=this; muss ja let my:=this; heissen und ich hatte meine Tabellen nachträglich umbenannt was zusätzlich für verwirrung gesorgt hat.

    Kann ich die abfrage auch erweitern? ich könnte ja den letzten Teil
    my.Preis:=first(select PREISE where PERSON=my.PERSON and 'TÄTIGKEIT'=my.'TÄTIGKEIT' and Datum=myDate).Preis
    noch mal benutzen für "Preis2" oder gibt es da schönere möglichkeiten?

Content aside

  • vor 5 JahrenZuletzt aktiv
  • 4Antworten
  • 3592Ansichten