Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да получите данни от друга таблица, като използвате данни от колона от друга таблица?

Трябва да създадете модел като този

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'
   }
}

След това

Вземете потребител от имейл

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

Вземете имейл от потребител

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

Сега имате достъп до данните си и от двата си модела.

Опитайте да отпечатате две команди по-горе, ще видите, че вашите данни съдържат данните от свързаната таблица.

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

Това е моят отговор.

[
    {
        "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"
    }
]

Повече информация:http://sailsjs.com/ документация/концепции/модели-и-орм/асоциации/едно към едно




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Първичният ключ за автоматично увеличаване на MySQL се увеличава с 10

  2. Грешка при PHP кодиране при създаване на XML от база данни

  3. Кой е най-бързият начин за зареждане на XML файл в MySQL с помощта на C#?

  4. Използване на обратни отметки около имената на полета

  5. Как да генерирам следващ номер за автоматично увеличение в mysql с помощта на php?