Retornar dados de duas tabelas juntando informações

Boa noite, pessoa. Tenho duas tabelas em um sistema. Passagem e Passagem_acompanhante.
nessa tabela Passagem tenho id, cidade, estado, passageiro
na tabela passagem_acompanhante, tenho id_passagem( que é uma fk de passagem) e o id do acompanhante.
Queria saber se tem alguma função que me faça juntar a tabela passagem e a de passagem_acompanhante e me retornar os dados das duas.

tabela passagem
passagem

tabela passagem_acompanhante
passagem_acomp

tentei com inner join, porem nao deu certo para o que preciso, preciso que ele pegue tanto a de passagem como a de passagem_acompanhante, ou seja, teria que me retornar 4 passagens e nao 3

Resultado com inner join,

Supondo que as tabelas sejam:

CREATE TABLE IF NOT EXISTS Passagem(
	id INT NOT NULL AUTO_INCREMENT,
	cidade VARCHAR(35) NOT NULL,
	estado VARCHAR(2) NOT NULL,
	passageiro VARCHAR(50) NOT NULL,
	CONSTRAINT pk_passagem PRIMARY KE(id)
)CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE TABLE IF NOT EXISTS Passagem_Acompanhante(
	codigo_pass_acomp INT NOT NULL AUTO_INCREMENT,
	id_passagem INT NOT NULL,
	id_acompanhante INT NOT NULL,
	CONSTRAINT pk_pas_acomp PRIMARY KEY(codigo_pass_acomp),
	CONSTRAINT fk_pas_acomp FOREIGN KEY(id_passagem) REFERENCES Passagem(id)
)CHARACTER SET utf8 COLLATE utf8_general_ci;

Isso não funciona:

SELECT Passagem.*, Passagem_Acompanhante.* FROM Passagem_Acompanhante AS Pass_Acomp
INNER JOIN Passagem AS Pass ON Pass_Acomp.id_passagem = Pass.id
ORDER BY Pass_Acomp.codigo_pass_acomp;

Obs.: não tentei, eu coloquei o código só para te incentivar a fazer o mesmo. Como montou a consulta?

Fiz assim

SELECT
passagem.id,
passagem.data_ida,
passagem.data_volta,
passagem.descricao,
passagem.cidade_id,
passagem.estado_id,
passagem.paciente_id,
passagem.acompanhante_id,
passagem_acompanhante.passagem_id,
passagem_acompanhante.acompanhante_id
FROM
passagem
INNER JOIN passagem_acompanhante ON passagem_acompanhante.passagem_id = passagem.id

Que tal assim:

SELECT Passagens.*, Cidades.nome_cidade, Estados.sigla, Passageiros.nome_passageiro, Passageiros.rg, 
Passagens.data_ida, Passagens.data_volta FROM Passagens_Acompanhante
INNER JOIN Passagens ON Passagens_Acompanhante.passagem_id = Passagens.id
INNER JOIN Cidades ON Passagens.cidade_id = Cidades.codigo_cidade
INNER JOIN Estados ON Cidades.codigo_uf = Estados.codigo_estado
ORDER BY Passagens;

Supondo as tabelas:

/*
* Estados
*/
CREATE TABLE IF NOT EXISTS Estados(
	codigo_estado INT NOT NULL AUTO_INCREMENT,
	nome_estado VARCHAR(20) NOT NULL,
	sigla VARCHAR(2) NOT NULL UNIQUE,
	CONSTRAINT pk_estado PRIMARY KEY(codigo_estado)
)CHARACTER SET utf8 COLLATE utf8_general_ci;
/*
* Cidades
*/
CREATE TABLE IF NOT EXISTS Cidades(
	codigo_cidade INT NOT NULL AUTO_INCREMENT,
	nome_cidade VARCHAR(35) NOT NULL,
	codigo_uf INT NOT NULL,
	CONSTRAINT pk_cidade PRIMARY KEY(codigo_cidade)
	CONSTRAINT fk_estado_cidade FOREIGN KEY(codigo_uf) Estados(codigo_estado)
)CHARACTER SET utf8 COLLATE utf8_general_ci;
/*
* Passageiros
*/
CREATE TABLE IF NOT EXISTS Passageiros(
	id_passageiro INT NOT NULL AUTO_INCREMENT,
	nome_passageiro VARCHAR(30) NOT NULL,
	rg VARCHAR(11) NOT NULL,
	CONSTRAINT pk_passageiro PRIMARY KEY(id_passageiro)
)CHARACTER SET utf8 COLLATE utf8_general_ci;
/*
* Passagens
*/
CREATE TABLE IF NOT EXISTS Passagens(
	id INT NOT NULL AUTO_INCREMENT,
	data_ida DATE NOT NULL,
	data_volta DATE NOT NULL,
	descricao VARCHAR(255),
	cidade_id INT NOT NULL,
	passageiro_id INT NOT NULL,
	CONSTRAINT pk_passagem PRIMARY KE(id)
)CHARACTER SET utf8 COLLATE utf8_general_ci;
/*
* Passagens_acompanhante
*/
CREATE TABLE IF NOT EXISTS Passagens_Acompanhante(
	codigo_pass_acomp INT NOT NULL AUTO_INCREMENT,
	passagem_id INT NOT NULL,
	acompanhante_id INT NOT NULL,
	CONSTRAINT pk_pas_acomp PRIMARY KEY(codigo_pass_acomp),
	CONSTRAINT fk_pas_acomp FOREIGN KEY(id_passagem) REFERENCES Passagem(id)
)CHARACTER SET utf8 COLLATE utf8_general_ci;

Mas eu identifiquei alguns problemas na modelagem… Por exemplo, uma passagem tem uma cidade de origem e uma cidade de destino, mas só registra uma cidade na tabela Passagens.

Obs.: eu costumo padronizar da seguinte forma:

1 - nomes de tabelas são grafadas no plural;
2 - campos de identificação de pessoas uso ID, dos restante uso código.

Obrigado por dispensar um tempo comigo, porém não resolveu o problema.
Eu teria que achar alguma forma de contar essas passagens tipo

tabela passagem

id| passageiro | data_ida | data_volta
5 15 2019-10-10 2019-10-11

tabela passagem_acompanhante

id_passagem | acompanhante
5 1
5 2

eu fazendo o inner join, ele vai me retornar duas passagens, porem e a do passageiro la em cima?
tá entendendo o que to dizendo?

5 15 2019-10-10 2019-10-11 1
5 15 2019-10-10 2019-10-11 2

Tu modelou o banco de dados? Poste a modelagem para eu entender como estão definidas as suas tabelas. Além disso, explique melhor o que tu quer. Note que no último código eu não listei na consulta para mostrar o acompanhante. Já tentou unir as tabelas?

Consulta1 UNION ALL Consulta2;

Para mais detalhes sobre o Union, visite: W3Schools - Operador Union.

Será algo mais ou menos assim:

-- Passageiros da tabela passagem
SELECT passagem.id, passagem.data_ida, passagem.data_volta, passagem.descricao, 
       passagem.cidade_id, passagem.estado_id, passagem.paciente_id, 
       'passageiro' as pessoa
  FROM passagem
UNION
-- acompanhantes
SELECT passagem.id, passagem.data_ida, passagem.data_volta, passagem.descricao, 
       passagem.cidade_id, passagem.estado_id, passagem.paciente_id, 
       concat ('Acompanhante ', passagem_acompanhante.acompanhante_id) as pessoa
  FROM passagem
 INNER JOIN passagem_acompanhante ON passagem_acompanhante.passagem_id = passagem.id