Thắc mắc về mysql nodejs

socket.on( 'user connect', function( data ) {
	var query = "SELECT * FROM wp_user_chat WHERE user_id_seller = '" + data + "' OR user_id_buyer = '" + data + "'";
	con.query( String( query ), function( err, rows, fields ) {
		const demo = []
		rows.forEach( function ( row, index, fields ) {
			if ( row.user_id_seller == data) {
				var user_id_con = row.user_id_buyer;
			} else {
				var user_id_con = row.user_id_seller;
			}
			var get_nickname = "SELECT meta_value FROM wp_usermeta WHERE meta_key = 'nickname' AND user_id = '" + user_id_con + "'";
			con.query( String( get_nickname ), row[index], function( err, get_nickname_rows, fields ) { 
				socket.nickname_user = get_nickname_rows[0].meta_value;
				row.meta_value = socket.nickname_user;
				demo.push(row);
			});
		});
		io.emit( 'get user', {
			message : rows,
			uid : data
		});
	}); 
});

Trong quey thứ 1 tớ lấy đc id. Dùng vòng lặp thứ 2 để lấy dữ liệu ra. Nhưng khi ra khỏi query thì dữ liệu ko đc lưu lại. Ai rành phần này giúp tớ với

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?