PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : DB - Abfrage mehrerer Tabellen mit einer Abfrage



bulli
28.05.2008, 19:03
Ich habe eine Tabelle mit den Usern und dort gibt es einen Ap Wert.
z.B.

User | AP
---------------
test1 | 345
test2 | 7803
test3 | 67239
test4 | 34
test5 | 0


Und jetzt will ich mit einer DB-Abfrage die AP-Werte von User bestimmt Usern z.B. test1, test4, test5

Bin noch auf keine richtige Lösung gekommen, wäre nett wenn mir einer helfen könnte :smile:

Xenon
28.05.2008, 19:07
Willst du alle User aufzählen ?
oder willst du nur von bestimmten usern auslesen ?

Bei allen user :
mit left join und eine while schleife kriegts du es hin .

MFG
adi

bulli
28.05.2008, 19:08
Ich will nur bestimmte User auslesen.

jpwfour
28.05.2008, 20:01
SELECT ap FROM tabelle WHERE user=XXX LIMIT 1;

so in etwa?

oder stehen die suer und die ap doch nicht in der gleichen tabelle, sondern nur die user id?

bulli
28.05.2008, 20:16
SELECT ap FROM tabelle WHERE user=XXX LIMIT 1;

Ja, soweit war ich auch schon, nur so muss ich doch für jeden User eine DB-Abfrage machen, wenn ich das mit einer while Schleife mache.

User und AP stehen in der selben Tabelle.

Limit 1 steht doch dafür, das nur das erste Ergbnis aus der Suchanfrage ausgegeben wird, oder?

jpwfour
28.05.2008, 20:23
achso, jetzt verstehe ich dich:
du willst also für bestimmte user auf einmal die ap auslesen, also für user test1, test3 und test 555:


SELECT user,ap FROM tabelle WHERE user=xxx OR user=yyydas limit kannst du hier weglassen, ist zwar immer besser mit, wenn man weiß, wie viele zeilen es den sind, aber ohne ist auch nicht schlimm :wink:


jetzt kommt es natürlich darauf an, woher du die info bekomsmt, welche suer den nun abgefragt werden sollen.

bulli
28.05.2008, 20:31
Super, so wollt ich das, ich kann ja nun soviel "OR user=xxx" anhängen wie ich brauch.



$zahl = 3;
$result = mysql_query("SELECT `ap` FROM `tabelle` WHERE `uid` = 'test1' OR `uid` = 'test6' `uid` = 'test589'");
$row = mysql_fetch_array ($result);

while($count < $zahl)
{
echo $count,", ";
echo XYZ;

}



So und nun bin ich bei der Ausgabe und weiß nicht was ich für XYZ einsetzten muss, damit hier die AP der Users angezeigt werden, etwa sowas
$row[aps][user1]?

jpwfour
28.05.2008, 20:42
$result = mysql_query("SELECT `uid`,`ap` FROM `tabelle` WHERE `uid` = 'test1' OR `uid` = 'test6' OR `uid` = 'test589'");

while($row=mysql_fetch_array ($result))
{
echo $row['ap'].", ";
echo $row['uid'];

}



so könnte ich mir das vorstellen

bulli
28.05.2008, 20:44
Wunderbar, so habe ich mir das vorgestellt, danke.:thumb::thumb::thumb: