超時我用這個測試:SQL工作在數據庫中,但得到的PHP
$sql_teste = "SELECT COUNT(*) FROM $tbl_membro";
$result_teste = mysql_query($sql_teste);
$ln_teste = mysql_fetch_array($result_teste);
print_r("start " . $ln_teste[0] . " end");
die();
,結果是:
start 90 end
那麼我想這一個:
SELECT profissao_nome, nome, contratacao_tipo_nome, codigo,
cidade_nome, estado_sigla, pais_nome, data,
postagem_descricao, membro_avatar, membro_foto, membro_foto_selecionada
FROM (
SELECT prof.nome as profissao_nome, e.razao_social as nome, ct.nome as contratacao_tipo_nome, v.codigo as codigo,
c.nome as cidade_nome, est.sigla as estado_sigla, p.nome as pais_nome, v.data_ultima_alteracao as data,
v.descricao as postagem_descricao, '' as membro_avatar, '' as membro_foto, '' as membro_foto_selecionada
FROM $tbl_vaga v
JOIN $tbl_empresa e ON v.codigo_empresa = e.codigo
JOIN $tbl_contratacao_tipo ct ON ct.codigo = v.codigo_contratacao_tipo
JOIN $tbl_endereco ende ON ende.codigo = v.codigo_endereco
LEFT JOIN $tbl_cidade c ON c.codigo = ende.codigo_cidade
LEFT JOIN $tbl_estado est ON est.codigo = c.codigo_estado
JOIN $tbl_pais p ON p.codigo = ende.codigo_pais
JOIN $tbl_profissao prof ON prof.codigo = v.codigo_profissao
UNION
SELECT '' as profissao_nome, CONCAT(u.nome,' ',u.sobrenome) as nome, '' as contratacao_tipo_nome, p.codigo as codigo,
'' as cidade_nome, '' as estado_sigla, '' as pais_nome, p.data_postagem as data,
p.descricao as postagem_descricao, m.avatar as membro_avatar, m.foto as membro_foto, m.foto_selecionada as membro_foto_selecionada
FROM $tbl_postagem p
JOIN $tbl_membro m ON m.codigo = p.codigo_membro
JOIN $tbl_usuario u ON u.codigo_membro = m.codigo
) as tab ORDER BY data DESC LIMIT 0,5
和我的結果是空的。
當我把:
print_r($ sql_teste);並把代碼在我的數據庫,我得到了我的結果正好
Showing rows 0 - 4 (5 total, Query took 0.0067 sec)
中的print_r:
SELECT profissao_nome, nome, contratacao_tipo_nome, codigo,
cidade_nome, estado_sigla, pais_nome, data,
postagem_descricao, membro_avatar, membro_foto, membro_foto_selecionada
FROM (
SELECT prof.nome as profissao_nome, e.razao_social as nome, ct.nome as contratacao_tipo_nome, v.codigo as codigo,
c.nome as cidade_nome, est.sigla as estado_sigla, p.nome as pais_nome, v.data_ultima_alteracao as data,
v.descricao as postagem_descricao, '' as membro_avatar, '' as membro_foto, '' as membro_foto_selecionada
FROM vaga v
JOIN empresa e ON v.codigo_empresa = e.codigo
JOIN contratacao_tipo ct ON ct.codigo = v.codigo_contratacao_tipo
JOIN endereco ende ON ende.codigo = v.codigo_endereco
LEFT JOIN cidade c ON c.codigo = ende.codigo_cidade
LEFT JOIN estado est ON est.codigo = c.codigo_estado
JOIN pais p ON p.codigo = ende.codigo_pais
JOIN profissao prof ON prof.codigo = v.codigo_profissao
UNION
SELECT '' as profissao_nome, CONCAT(u.nome,' ',u.sobrenome) as nome, '' as contratacao_tipo_nome, p.codigo as codigo,
'' as cidade_nome, '' as estado_sigla, '' as pais_nome, p.data_postagem as data,
p.descricao as postagem_descricao, m.avatar as membro_avatar, m.foto as membro_foto, m.foto_selecionada as membro_foto_selecionada
FROM postagem p
JOIN membro m ON m.codigo = p.codigo_membro
JOIN usuario u ON u.codigo_membro = m.codigo
) as tab ORDER BY data DESC LIMIT 0,5
我的猜測:超時。但我不明白爲什麼。它只花了0.0067秒
您是否嘗試過我的建議 - 您得到了哪些錯誤? – ManseUK 2011-12-23 14:55:20
在我的本地主機這個SQL仍然無法正常工作,但在服務器上工作。 (確定工作應該在哪裏工作,但爲什麼不能在我的本地主機上工作?) – 2012-01-23 13:35:02