Forum: SQL |
Thema:
Re: Daten aus Tabellen auslesen |
Von:
G. Guest (
08.02.2005 11:17) |
Vielen Dank für Ihre Hilfe aber leider haben Sie noch nicht verstanden, was ich gern haben möchte, Bitte nehemen Sie mein Beispiel als Beispiel:
hier beschreibe ich das Problem nochmal ganz deutlich:
User1
id id_user1 id_user2 intposition
1 100 null 1
2 null 200 2
3 101 null 3
4 null 201 4
User2
id_user2 fieldname_user2
200 Test1
201 Test2
User3
id_user3 id_user1 fieldname_user1
300 100 Name1
301 101 Name2
Das Resultat muss folgenden nach der position ausgegeben wird:
Name1
Test1
Name2
Test2
Vielen Dank!
Betreff |
Von |
Datum |
|
  |
Re: Daten aus Tabellen auslesen
So, mit ein bissl "ummodeln" der DB und des SQL-Befehls ging es doch ...<br><br>select user1.intposition, case when user1.id_user2 is not null then (select user2.fieldname_user2 from user2 where... |
 |
 |
 |
|
|
Thomas
Golla
|
08.02.2005 12:07 |
|
  |
Re: Daten aus Tabellen auslesen
Sorry ich bekomme immer noch die gleiche Fehlermeldung:<br><br>Server: Nachr.-Nr. 512, Schweregrad 16, Status 1, Zeile 1<br>Die Unterabfrage gab mehr als einen Wert zurück. Das ist ungültig, wenn die... |
 |
 |
 |
|
|
G.
Guest
|
08.02.2005 12:28 |
|
  |
Re: Daten aus Tabellen auslesen
Diesen fehler bekommt man, wenn zum Beispiel in der Tabelle user2 mehrere Zeilen mit den gleichen id_user2 Wert gibt. <br>Genauso verhält es sich wenn es in der Tabelle user3 mehrere Zeilen mit den... |
 |
 |
 |
|
|
Thomas
Golla
|
08.02.2005 13:00 |
|
  |
Re: Daten aus Tabellen auslesen
Perfekt vielen Dank, funktioniert aber werden die Null Spalten angezeigt, wenn ein user_id nicht da ist, <br>Gibt es die Möglichkeit, dass man die Null nicht anzeigt. |
 |
 |
 |
|
|
G.
Guest
|
08.02.2005 13:21 |
|
  |
Re: Daten aus Tabellen auslesen
Ja, dafür gibt es gleich zwei Lösungen.<br><br>1)<br>select newtab.resultat from <br>(select top 100 percent user1.intposition, case when user1.id_user2 is not null then (select max(user2.fieldname_user2)... |
 |
 |
 |
|
|
Thomas
Golla
|
08.02.2005 13:37 |
|
|
G.
Guest
|
08.02.2005 13:50 |
|
  |
Re: Daten aus Tabellen auslesen
Ups, taucht wieder ein problem auf bei der Anweisung, <br>wenn in der Tabelle user1 mehere id_user1, darf nur ein fieldname_user1 für ein id_user1 angezeigt werden!!!<br><br>Vielen Dank<br> |
 |
 |
 |
|
|
G.
Guest
|
09.02.2005 09:16 |
|
|
G.
Guest
|
09.02.2005 09:22 |
|
  |
Re: Daten aus Tabellen auslesen
Können Sie mir zeigen , wie ich in der Anweisung group by einsetzen darf:<br><br>select user1.intposition, case when user1.id_user2 is not null then (select max(user2.fieldname_user2) from user2 where... |
 |
 |
 |
|
|
G.
Guest
|
09.02.2005 09:36 |
|
  |
Re: Daten aus Tabellen...
wenn in der Tabelle user1 mehrerer gleiche Zeilen gibt bloß mit anderer intposition und id dann kann man mit min den kleinsten intpositionswert dem zugehörigen resultat bekommen. Ersetzt man das min... |
 |
 |
 |
|
|
Thomas
Golla
|
09.02.2005 10:12 |
|
  |
Re: Daten aus Tabellen...
Sorry, ich habe meine Frage vorher nicht deutlich gemacht:<br>Ich habe aber noch ein weitere Spalte in der Tabelle user1 heisst filterid<br><br>d.h<br><br>user1<br><br>id groupid id_user1 intposition ... |
 |
 |
 |
|
|
G.
Guest
|
09.02.2005 10:43 |
|
  |
Re: Daten aus Tabellen...
Wenn es so nicht klappt habe ich auch keine Ahnung wie es sonst klappen könnte:<br><br>select min(tab1.intposition), tab1.resultat from (<br>select top 100 percent user1.intposition, case when... |
 |
 |
 |
|
|
Thomas
Golla
|
10.02.2005 15:02 |
|
  |
Re: Daten aus...
Vielen Dank , das hat perfekt funktioniert, genau wie ich mir das gewünscht habe |
 |
 |
 |
|
|
G.
Guest
|
10.02.2005 16:34 |
|
|
G.
Guest
|
10.02.2005 21:27 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!