会社情報(名前、住所、会社の説明など)とユーザー情報(姓、名字、メールアドレス、パスワード)を含むテーブルがあります。会社テーブルをユーザテーブルに結び付けて、ユーザがログインしたときに会社がユーザと適切に関連付けられるようにするにはどうすればよいですか?私は会社のテーブルにユーザーIDの列を持っていますか?MySqlでテーブルを結ぶ
0
A
答えて
4
複数のユーザーが1つの会社に所属し、1つの会社のみがユーザーに関連付けられていると仮定すると、ユーザーテーブルの会社IDが最も適しています。あなたはすべてのケースでは、両方が一致したことを期待している
が一緒に2つのテーブルを結合するには、INNER JOINを使用します。SELECT u.*, c.companyname FROM users u
INNER JOIN companies c ON u.companyid = c.companyid
明らかに、上記のシミュレートされたクエリであり、あなたのスキーマ/要件に合致するように調整必要。
2
あなたはjoinsを探しています。あなたがのcompany_idのような名前を持つユーザー表の列を作成し、ユーザーとその会社を取得するには、このようにそれを照会する必要があるので、
企業は、ユーザーとの1対多の関係を持っているでしょう:
をSELECT * FROM users INNER JOIN companies ON users.company_id = companies.id
0
いいえ、おそらく1対多の関係になります。だから1社には多くの従業員がいる。しかし、1人の従業員は1つの会社にしか属しません(物事を単純に保つため)。
これは、会社のIDを指すユーザーテーブル内の外部キーを必要とします。
関連する問題
- 1. mysqlの結合テーブル結合
- 2. のMySQL - 結合テーブル
- 3. MySQLテーブルの結合
- 4. SQL:クエリのテーブルにビューを結ぶので
- 5. mysqlテーブル内の結合
- 6. MySQL:ハッシュインデックスとテーブルの結合
- 7. フィルタ付きMySQL結合テーブル
- 8. PHPのMySQL結合テーブル
- 9. GROUPとmysqlの結合テーブルの連結
- 10. mysql内部結合テーブル1とテーブル2
- 11. 画像を線で結ぶ
- 12. Coffeescriptで約束を結ぶ
- 13. mysql:合計で2つのテーブル結合
- 14. Medoo(MySQL)でテーブルに結合する
- 15. PostgreSQLのテーブル/テーブルでMySQLテーブル/テーブル(結合テーブル)を同期/ストリーミングする
- 16. 塗りつぶし一時テーブルSQL Serverでチェック結果
- 17. MySQL:正しい結果で4つのテーブルを結合する
- 18. MySqlで複数のテーブルの結果を結合する
- 19. MySQLテーブル3とテーブル3をテーブル1とテーブル2のIDで結合する
- 20. テーブルを動的に結合するMySQL
- 21. 3つのテーブルを結合するMySQL
- 22. MySQL 2つのテーブルを結合する
- 23. MySQL自分自身にテーブルを結合
- 24. MYSQL - 複数のテーブルを結合し、SUM
- 25. 同じテーブルを結合したMysqlユニオン
- 26. 2テーブルのデータを結合するMySQL
- 27. 別のmysqlテーブルにクエリ結果をコピー
- 28. MySQL - 2テーブルを結合する
- 29. テーブルにmysqlの結果を表示
- 30. mySQL - 複数のテーブルを結合する
私はCakephpを使っているので、私のモデルにhasOne、hasMany、hasandBelongstoMany、およびbelongsToのような関連付けを使用でき、自動的に結合を処理することがわかりました... –