Já pesquisei mas não sei nem como posso chamar algo assim.
Preciso fazer um SELECT que selecione na tabela 'usuarios' a lista de 'id' dos canais que este usuario pode ver, depois selecione cada um destes ids na tabela 'canais' sempre que o status do canal for 1, sendo assim selecione na tabela 'streamings' a linha que for 'canal_id' igual ao 'id' do canal com status 1 e 'server_id' igual ao conteudo da coluna 'server_pref' do usuario em questao. Caso o status do streamings for 0 ou a coluna streaming for vazia ele tera que selecionar o streaming da tabela 'canais'.
já tentei alguma coisa como os abaixo:
$lscanais = "212,123,422,431,223"; //exemplo de ids
SELECT cn.*, str.streaming FROM canais AS cn, streamings AS str WHERE cn.id IN ($lscanais) AND cn.status=1
SELECT
cn.*,
u.*,
str.streaming AS StreamingPref
FROM
canais AS cn,
usuarios AS u,
streamings AS str
WHERE
(cn.status=1 AND
cn.id IN ($lscanais)) OR
(str.server_id=u.server_pref AND str.canal_id IN ($lscanais))
AND u.id='$usuario'
SELECT
canais.*,
streamings.*
FROM
usuarios AS u,
canais
LEFT OUTER JOIN streamings
ON streamings.canal_id IN ($lscanais)
WHERE
canais.status=1 AND
canais.id IN ($lscanais) AND
u.id='$usuario'
Preciso que o valor do campo 'streaming' seja dinamico, quando existir uma entrada no BD para o canal_id igual ao id da tabela canais que esteja com status 1 e o server_id for igual ao server_pref do usuario, me retorne o valor streaming da tabela 'streamings', caso não exista uma entrada com canal_id solicitado ou o streamings.status for 0 ou ainda o campo streaming na tabela streamings for vazia, me retorne o valor streaming da tabela canais, que é o padrão.
Não sei se deu pra entender, qualquer coisa só pedir eu explico melhor.
To precisando muito disso ai, se alguém puder ajudar ficarei muito grato.
Pergunta
Guest X-PC
Olá,
Já pesquisei mas não sei nem como posso chamar algo assim.
Preciso fazer um SELECT que selecione na tabela 'usuarios' a lista de 'id' dos canais que este usuario pode ver, depois selecione cada um destes ids na tabela 'canais' sempre que o status do canal for 1, sendo assim selecione na tabela 'streamings' a linha que for 'canal_id' igual ao 'id' do canal com status 1 e 'server_id' igual ao conteudo da coluna 'server_pref' do usuario em questao. Caso o status do streamings for 0 ou a coluna streaming for vazia ele tera que selecionar o streaming da tabela 'canais'.
já tentei alguma coisa como os abaixo:
$lscanais = "212,123,422,431,223"; //exemplo de ids
Preciso que o valor do campo 'streaming' seja dinamico, quando existir uma entrada no BD para o canal_id igual ao id da tabela canais que esteja com status 1 e o server_id for igual ao server_pref do usuario, me retorne o valor streaming da tabela 'streamings', caso não exista uma entrada com canal_id solicitado ou o streamings.status for 0 ou ainda o campo streaming na tabela streamings for vazia, me retorne o valor streaming da tabela canais, que é o padrão.
Não sei se deu pra entender, qualquer coisa só pedir eu explico melhor.
To precisando muito disso ai, se alguém puder ajudar ficarei muito grato.
desde já agradeço.
abs
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados