2
nodejs에 mysql 모듈을 사용하고 있습니다.NodeJS의 mysql 쿼리 타이밍 문제
이 같은 작업을 수행하려고하지만 쿼리의 콜백이 비동기이며 결과 배열을 올바르게 채울 수 없다는 문제가 있습니다. 어떻게하면됩니까? 감사!
function fn(callback) {
client.query(
'SELECT * FROM imbarcazioni',
function select(err, ships) {
if(err) {
throw err;
}
ships.forEach(function(ship) {
client.query(
'SELECT * FROM storico_imbarcazioni WHERE id_imbarcazione=' + ship.id,
function select(err, hist) {
ship.history = hist;
}
);
});
callback(hist);
});
}
덕분에, 내가 무엇을 찾고 있어요입니다! 왼쪽 가입을 위해 노력했지만 성공하지 못했습니다 .. – frx08
@ frx08 : 고마워요! 나는 (JOIN을 위해) SQL 문을 고쳤다. 몇 가지 오류가 있었다. [JOIN에서 읽어야합니다] (http://en.wikipedia.org/wiki/Join_ (SQL)), [여기서는 멋진 시각화입니다] (http://www.codinghorror.com/blog/2007/) 10/a-visual-explanation-of-sql-joins.html)에 의해 작성된 StackOverflow 공동 설립자 인 Jeff Atwood. –
SQL 방식의 문제는 SQL 쿼리를 통해 많은 중복 객체를 얻는 동안 자체 히스토리 객체가 포함 된 단일 배 객체를 갖고 싶다는 것입니다. – frx08