私は同じデータベースに2つのテーブルを持っています。一つはピクチャ用、もう一つはピクチャコメント用のテーブルです。どのように私は各特定の画像に属しているすべてのコメントを取得するSQLコマンドを書くことができますか?mysqlテーブルへの接続方法
答えて
以下のコードが有効です。私が言ったように、これはかなり基本的な問題です、そして、私はあなたがこれに関連するいくつかの問題を感じています。試したコードを投稿し、質問を編集します。 WHERE
節を使用してさらにフィルタリングすることができます。
SELECT picture_table.pic_owner, picture_table.pic_insert_date, picture_comment_table.pic_commentor_name, picture_comment_table.pic_comments FROM
picture_table LEFT JOIN picture_comment_table
ON picture_table.pic_id = picture_comment_table.pic_id
$mysqli = new mysqli("example.com", "user", "password", "database");
$query = "SELECT picture_table.pic_id, picture_comment_table.*
FROM picture_table LEFT JOIN picture_comment_table
ON picture_table.pic_id = picture_comment_table.pic_id";
$stmt = $mysqli->prepare($query);
!$stmt ? die('error') : "";
$stmt->execute();
いくつかの写真は内部結合の場合に選択される予定されていませんコメントなしがあるので、私は参加し、左使用。
画像に複数のコメント行がある場合、その画像には1行以上の結果が表示されることに注意してください。アプリケーションレイヤー(あなたのPHPコード) SQLステートメント。
良い答え。私はPHPの部分とLEFT Joinについて忘れてしまった。 – Oasa
ありがとう、それは完全に働いた。 – tonclem
[ { "pic_id": "picture100"、 "pic_owner": "スタンレーキン"、 "pic_insert_date": "23-02-2017"、 [ { "pic_commentor_name": "キム・ラブ" 、 "pic_comments": "あなたは美しい見える" }、 { "pic_commentor_name": "ジョン・ドウ愛"、 "pic_comments": } ] } "マーベラスあなたがいる"、 { "pic_id": "picture101"、 "pic_owner": "Linkyはナム"、 "pic_insert_date": "21-04-2017"、 [ { "pic_commentor_name": "リラ愛"、 "pic_comments": "あなたはゴージャスに見える" }、 {"pic_commentor_name": "Bram Javan"、 "pic_comments": "写真をもっと愛し.....「 } ] } ]しかし、私はこの形式であなたは歓迎されている – tonclem
上記のように接合するのは良い解決策です。 しかし、プライマリキーとフォーキーキーを使用して2つのテーブルを関連付けることもできます。 ピクチャテーブルにプライマリキーフィールドを作成し、コメントテーブルにforiegnキーフィールドを作成します。
私に例を示してください – tonclem
- 1. どのようにMySQLに接続しますか? MySQLへの接続方法
- 2. MySQLサーバーの接続方法
- 3. Spotfireのmysqlへの接続?
- 4. リモートmysqlへのローカルサーバー接続
- 5. オンラインデータベースへのMySQL接続エラー
- 6. MySQLへのUipath接続
- 7. mysqlへのC++データベース接続
- 8. リモートmysqlへのサーブレット接続
- 9. mysqlレプリケーションへのPHP接続
- 10. MYSQLとドメインデータベースへの接続
- 11. データベースへのMySql PDO接続
- 12. MySQL 5.1へのODBC接続
- 13. Exchangeへの接続方法
- 14. ウェブアプリパッケージへの接続方法
- 15. HeidiSQLは、MySQLサーバへの接続 - データベースへの接続に初期
- 16. JavaのMySQLとPostgreSQLのAzureデータベースへの接続方法
- 17. リモートのmysqlデータベースへの接続を保護する方法
- 18. データベースへのMySQL接続を無視する方法
- 19. C++からの接続信号への接続方法は?
- 20. postgresへの接続方法sqlalchemyとの最大接続?
- 21. Sourceforge.netへの接続NetbeansのMySQLデータベース
- 22. MySQLへの複数のPHP接続 - ベストプラクティス
- 23. SQLALCHEMY経由のMysqlへのPython接続
- 24. ホスト上のMySqlデータベースへの接続
- 25. Spotify Appのmysqlへの接続
- 26. SYN_SENTのmysqlサーバへの接続
- 27. mysql接続の確認方法
- 28. mysqlとnodejsの接続方法は?
- 29. mysqlデータベースとの接続方法は?
- 30. MYSQL PHPとの接続方法
[join](https://www.w3schools.com/sql/sql_join.asp)でテーブルに参加できます。テーブル名とカラム名について十分な情報を提供していないため、誰も実際のSQL文を書くことはできません –
ピクチャテーブルのカラムはpic_id、pic_owner、pic_insert_dateです。コメントの列名はpic_id、pic_commentor_name、pic_commentsです。 – tonclem
あなたは共通ID、例えばpictureidやpost_idで 'join'文を使う必要があります。追加の詳細を指定しなかったので、一般的な構文は次のようになります: 'SELECT comment_text、comment_user FROM pictureTable JOIN commentTable ON pictureId' – Oasa