Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo,

folgendes Problem:

Ich habe 2 Tabellen, mal so grob die Spalten, also die wichtigen die ich jez brauche:

tabelle 1:

ticketnr, beschreibung, status, objektid, idadminbearbeitung, anfangsdatum

tabelle 2:

id, typ

so ich will jez aus tabelle 1 daten rausholen.. und zwar:

1. in der beschreibung suche ich nach einem schlüsselwort (where beschreibung like '%wort%')

2. das anfangsdatum soll in nem bestimmten zeitraum liegen where anfangsdatum >= datumsanfang and anfangsdatum <= datumsende)

das funktioniert bis jetzt wunderbar, jetzt kommt der Teil wo ich nen Join brauche:

3. ich gebe einen typ ein.. die id die in der objektid in tabelle 1 steht kann ich in tabelle 2 wiederfinden in id

ich will also nur datensätze aus tabelle 1 dessen objektid in tabelle 2 einen bestimmten typen hat

hab bis jez das hier, aber das funzt nich mit dem join, steig da leider noch nicht so durch:

"SELECT a.ID, a.TicketNr, a.ObjektID, a.Beschreibung, a.Status, kObjekte.Typ,a.IDAdminBearbeitung FROM dAktion as a, kObjekte"

+ " WHERE a.Beschreibung LIKE '%" + suchwort + "%' AND a.IsBase = 'J' AND a.Anfang >= " + datumsanfang + " AND a.Anfang <= " + datumsende + " "

+ "INNER JOIN kObjekte ((ON kObjekte.ID = dAktion.ObjektID) LEFT JOIN kObjekte.Typ = " + typ + ")"

Kann mir bitte jemand helfen?

"SELECT a.ID, a.TicketNr, a.ObjektID, a.Beschreibung, a.Status, kObjekte.Typ,a.IDAdminBearbeitung FROM dAktion as a, kObjekte"

+ " WHERE a.Beschreibung LIKE '%" + suchwort + "%' AND a.IsBase = 'J' AND a.Anfang >= " + datumsanfang + " AND a.Anfang <= " + datumsende + " "

+ "INNER JOIN kObjekte ((ON kObjekte.ID = dAktion.ObjektID) LEFT JOIN kObjekte.Typ = " + typ + ")"

Kann mir bitte jemand helfen?

Also die Reihenfolge is schonmal falsch

SELECT 

a.ID, a.TicketNr, a.ObjektID, a.Beschreibung, a.Status, b..Typ , a.IDAdminBearbeitung FROM dAktion a

INNER JOIN kObjekte b 

ON b.ID = a.ObjektID

WHERE a.Beschreibung LIKE '%<suchwort>%' AND a.IsBase = 'J' AND a.Anfang >= <datumsanfang> AND a.Anfang <= <datumsende>

Hab mal deine Quotes rausgenommen...

Versuch mal einheitlich die Aliase fuer die Tabellen zu benutzen.. und Joins wirklich nur ueber die IDs zu machen.. den rest kannst du normal per Aliase referenzieren...

Jo danke, sieht schon mal was logischer aus.

Jetzt habe ich aber immer noch keinen Bezug auf den Typen des Objekts

Wenn ich nur gucke ob die ObjektID auch in der Tabelle kObjekte steht, bringts ja nichts, die steht auf jeden Fall drin.

Das Wichtige ist ja, ob das Objekt auch den bestimmten Typen hat, das bringt mich ja so durcheinander *g*

Ohne die Typenauswahl gehts ja auch ohne JOIN

Geht das dann mit nem


...

INNER JOIN kObjekte b ON b.ID = a.ObjektID

AND b.Typ = <typ>

...

oder brauch ich da son 2. Join?

...

INNER JOIN kObjekte b ON b.ID = a.ObjektID

INNER JOIN b ON b.Typ = <typ>

...

anscheinend nicht. er sagt mir "Verknüpfungsausdruck nicht unterstützt"

Jo, macht auch mehr Sinn *g*

Funktioniert.

Vielen Dank für die schnelle Hilfe :)

Naja, ganz schön viel aufwand, dafür, dass Inner Join eigentlich eine unnötige Verknüpfung ist, weil Inner Join eigentlich nur eine andere Schreibweise für Where ist.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.