Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara mendapatkan data dari tabel lain menggunakan data kolom dari tabel yang berbeda?

Anda harus membuat model seperti ini

api/models/Email.js

attributes: {
    email : {
        type: 'email',
        unique: true
    },
    owner : {
        model:'user',  //here put your model name 
        unique: true   //put unique here because it's one by one association
   }
}

api/models/User.js

attributes: {
   username : {
     type: 'string',
     unique: true
   },
   userEmail : {
      collection:'email', //here is also model name
      via: 'owner'
   }
}

Kemudian

Dapatkan pengguna dari email

Email.find().populate('owner')

Dapatkan email dari pengguna

User.find().populate('userEmail')

Sekarang Anda dapat mengakses data Anda berdua dari dua model Anda.

Coba cetak dua perintah di atas, Anda akan melihat bahwa data Anda berisi data dari tabel terkait.

Email.find().populate('owner').exec(function(err, records) {
    res.json(records)
});

Ini tanggapan saya.

[
    {
        "owner": {
            "username": "test",
            "id": 1,
            "createdAt": "2016-11-23T13:45:06.000Z",
            "updatedAt": "2016-11-23T13:45:06.000Z"
        },
        "email": "[email protected]",
        "id": 1,
        "createdAt": "2016-11-23T13:45:06.000Z",
        "updatedAt": "2016-11-23T13:45:06.000Z"
    }
]

Informasi lebih lanjut:http://sailsjs.com/ dokumentasi/konsep/model-dan-orm/associations/satu-ke-satu




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menghasilkan entitas dari database

  2. Pembaruan MySQL dari satu tabel ke tabel lain dengan kondisi tidak berfungsi?

  3. Menyelesaikan pengkodean karakter yang salah saat menampilkan hasil database MySQL setelah memutakhirkan ke PHP 5.3

  4. Hubungkan ke database MySQL jarak jauh menggunakan VB.NET 2010

  5. Pesanan khusus Mysql berdasarkan dan urutan abjad berdasarkan: