0
require_once("./Connections/root.php");
session_start();
$user = $_SESSION['MM_Username'];
$q = mysql_query("SELECT id FROM performer WHERE username = '$user'");
$r = mysql_fetch_assoc($q);
$q1 = mysql_query("SELECT poster_id, wall_msg FROM performer_info WHERE id = '$r[id]'");
$r1 = mysql_fetch_assoc($q1);
$q2 = mysql_query("SELECT username FROM performer WHERE id = '$r1[poster_id]'");
$r2 = mysql_fetch_assoc($q2);

echo $r2['username'] . " : " . $r1['wall_msg'];

これらすべてのクエリを単一のクエリと結果で使用することは可能ですか?

内部結合を使用する必要があると思いますが、どうすればよいかわかりません

$_SESSION['MM_Username'] は、ログインしているユーザー、username です。

4

2 に答える 2

0

内部結合はどうですか?

SELECT t.username , pi.wall_msg 

FROM performer t

INNER JOIN performer_info pi ON pi.id = t.id

WHERE t.username LIKE '%$user%' 
于 2013-11-09T10:46:31.087 に答える
0

次のようなクエリを使用できます

select wall_msg from performer_info where poster_id = (select id from performer where username = '$user')

既に知っているユーザー名...そして、このクエリの結果から wall_msg を取得できます。

編集:

 select p.username, t.wall_msg from performer p, (select poster_id, wall_msg from performer_info where id=(select id from performer where username= '$user'))t where p.id = t.posterid;

これは、内部クエリが単一の結果を返す場合にのみ機能します。それが役に立てば幸い。

于 2013-11-09T10:17:45.390 に答える