今、私はSQL応答から変数を必要以上に設定せずに設定しようとしています。より効率的な方法で単一の値を設定したMySQL行を取得する
私は、単一の値しか持たないuser_id
列のSELECT + JOINクエリからSQL結果を得ています。他の列は行ごとに異なり、そのデータをループする必要があります。私は、user_id
列から均一な値を抽出する方法があったのかどうか、whileループの変数に何度も何度も何度も何度も設定していないのだろうかと思っていました。
コード:
#where I would like the $user_id to be set
while($responseArray = $response->fetch_assoc()){
$userId = $responseArray["user_id"]; #what I don't want to do
#other fetching stuff
}
SQL:あなたは、少なくとも1つの結果行をフェッチから離れて取得することはできません
SELECT users.username, users.user_id, posts.post_id, posts.post_content, posts.number_comments, comments.comment_id, comments.comment_post_id
FROM users
JOIN posts
JOIN comments
WHERE delete_bit = 0 AND username = "john";
のような愚かなものよりもはるかに良いだろう...しかし、私はあなたがWHERE句を使用することができるはずな感覚を持っています。 – nerdlyist
SELECT users.username、users.user_id、posts.post_id、posts.post_content、posts.number_comments、comments.comment_id、comments.comment_post_idユーザーからの投稿JOINのコメントwhere_delete_bit = 0 AND username = "john"; – blastitall
A)これは機能しますか?私は、JOINにそれと一緒に「ON」が必要であることをかなり確信しています。 B)どこに/ポスターがあるのですか? – nerdlyist