Condição Sql
Started By Eu_Nana, 26/06/2009, 16:45
7 replies to this topic
#1
Posted 26/06/2009, 16:45
Olá pessoal
Tenho uma tabela com vários campos entre eles existe a coluna1 e coluna2, na coluna1 pode possuir os seguintes valores: 1, 2, 3, 4, 5,6 cadastrados não necessariamente nessa ordem. Na coluna2 também pode possuir os valores: 1, 2, 3, 4, 5,6 também não necessariamente nessa ordem.
Consegui fazer essa Consulta SQL para a coluna1, porém não consigo fazer para as duas colunas
Bom quero somar as duas colunas onde o valor for igual a 1 por exemplo.
Espero que me ajudem....
Tenho uma tabela com vários campos entre eles existe a coluna1 e coluna2, na coluna1 pode possuir os seguintes valores: 1, 2, 3, 4, 5,6 cadastrados não necessariamente nessa ordem. Na coluna2 também pode possuir os valores: 1, 2, 3, 4, 5,6 também não necessariamente nessa ordem.
Consegui fazer essa Consulta SQL para a coluna1, porém não consigo fazer para as duas colunas
Bom quero somar as duas colunas onde o valor for igual a 1 por exemplo.
Espero que me ajudem....
#3
Posted 26/06/2009, 17:26
att,
Muller Dias
ex-administrador Fórum WMO
Muller Dias
ex-administrador Fórum WMO
#4
Posted 29/06/2009, 07:57
SELECT coluna1+coluna2 as soma FROM tabela
http://dev.mysql.com...-functions.html
Ok, mais eu quero somar as duas colunas onde o valor for igual a 1 por exemplo. Dessa forma q me passou esta somando da seguinte forma: pega o valor da coluna1 e soma com o valor da coluna 2. E quero "varrer" a tabela inteira e por exemplo: Selecionei o curso MySQL cujo id=1, ou seja ele vai "varrer" a coluna1 e coluna2 e procurar por valores iguais a 1 e somar. Assim por diante....
Entendeu?
#5
Posted 29/06/2009, 09:53
Não deu para entender o que você quer não...
Isso?
SELECT coluna1+coluna2 as soma FROM tabela WHERE coluna1='1' AND coluna2='1'
Isso?
att,
Muller Dias
ex-administrador Fórum WMO
Muller Dias
ex-administrador Fórum WMO
#6
Posted 29/06/2009, 10:07
Não deu para entender o que você quer não...
SELECT coluna1+coluna2 as soma FROM tabela WHERE coluna1='1' AND coluna2='1'
Isso?
Olha só eu tenho uma tabela com os seguintes campos: id_curso, nome, email, curso1 e curso2;
Segue abaixo o esquema +- da tabela.....mais tb estou enviando uma imagem em anexo de minha tabela
curso1| curso2
1 | 6
6 | 2
4 | 1
1 | 2
1 | 1
Quero somar qnts pessoas selecionaram o curso com id=1 por exemplo, tanto na coluna do curso1 quanto curso2.....entedeu?
Attached Files
#7
Posted 29/06/2009, 10:53
Agora eu entendi...
Não tem nada de soma aí, isso que me confundiu...
Veja:
Pronto, só retornará as linhas que tiverem os campos curso1 ou curso2 preenchidos com o id 1. Para contar as linhas retornadas, se você estiver trabalhando com PHP, pode usar a função mysql_num_rows().
Não tem nada de soma aí, isso que me confundiu...
Veja:
SELECT * FROM tabela WHERE curso1='1' OR curso2='1'
Pronto, só retornará as linhas que tiverem os campos curso1 ou curso2 preenchidos com o id 1. Para contar as linhas retornadas, se você estiver trabalhando com PHP, pode usar a função mysql_num_rows().
att,
Muller Dias
ex-administrador Fórum WMO
Muller Dias
ex-administrador Fórum WMO
#8
Posted 29/06/2009, 11:42
Agora eu entendi...
Não tem nada de soma aí, isso que me confundiu...
Veja:SELECT * FROM tabela WHERE curso1='1' OR curso2='1'
Pronto, só retornará as linhas que tiverem os campos curso1 ou curso2 preenchidos com o id 1. Para contar as linhas retornadas, se você estiver trabalhando com PHP, pode usar a função mysql_num_rows().
Bom eu fiz aqui e deu certo .....porém minha consulta sql esta assim veja:
select nome, nome_curso, curso1, count(*) from cursos inner join cursos_selecionados on cursos.idcursos=cursos_selecionados.curso1 where idcursos='$cursos' group by nome, nome_curso, curso1;
Bom para realizar essa consulta.....tenho um combo de select
Selecione uma Curso: Selecione Curso PHP Curso MySQL Curso PostGree Curso JSP Curso JavaScript Curso Java
Ou seja, de acordo com o id selecionado pela pessoa.....como faço para utilizar essa dica que vc me passou no meu sql acima?
Valew pela ajuda...
Agora eu entendi...
Não tem nada de soma aí, isso que me confundiu...
Veja:SELECT * FROM tabela WHERE curso1='1' OR curso2='1'
Pronto, só retornará as linhas que tiverem os campos curso1 ou curso2 preenchidos com o id 1. Para contar as linhas retornadas, se você estiver trabalhando com PHP, pode usar a função mysql_num_rows().
Bom eu fiz aqui e deu certo .....porém minha consulta sql esta assim veja:select nome, nome_curso, curso1, count(*) from cursos inner join cursos_selecionados on cursos.idcursos=cursos_selecionados.curso1 where idcursos='$cursos' group by nome, nome_curso, curso1;
Bom para realizar essa consulta.....tenho um combo de selectSelecione uma Curso: Selecione Curso PHP Curso MySQL Curso PostGree Curso JSP Curso JavaScript Curso Java
Ou seja, de acordo com o id selecionado pela pessoa.....como faço para utilizar essa dica que vc me passou no meu sql acima?
Valew pela ajuda...
Oiee Consegui resolver o problema acima.....
Mais deixa eu te fazer outra pergunta......preciso fazer o seguinte ainda......
Tipo eu armazeno numa variavel o numero total de pessoas que escolheram o curso de id=1 por exemplo, dae divido por 2 para exibir metade dos nomes em uma coluna e a outra metade logo abaixo..... Igual a esta página:Escola Coteca Aparecida
Porém ele só esta fazendo isso quando possui um numero redondo....por exemplo 10 pessoas escolheram o curso de id=1, quando possui um numero assim ele divide e joga em colunas diferentes.....mais se tiver 9 pessoas ele realiza a divisão só que mantém os nomes na mesma coluna.......veja meu código completo:
include "include/conexao.php"; $cursos = $_POST['cursos']; if(!empty($cursos)) { $sql = "select nome, nome_curso, curso1, count(*) from cursos inner join cursos_selecionadas on cursos.idcursos=cursos_selecionadas.curso1 where curso1='$cursos' or oficina2='$cursos' group by nome, nome_curso, curso1"; $rs = mysql_query($sql,$con) or die (mysql_error()); ?> $qtd=round(mysql_num_rows($rs)).''; $calcula=$qtd/2; $i=0; while($linha = mysql_fetch_array($rs)) { $nome_bd = $linha['nome']; $nome_oficina = $linha['nome_oficina']; if($i==$calcula) { echo " "; $i=0; } $i++; ?> '?> }//fim do while }//fim do if mysql_close($con);?>
Oq eu percebi é que não esta entrando no "if", quando ele encontra um valor quebrado por exemplo 9.....se ele encontrar um valor total 10 ele entra dentro do if
Se puder me ajudar......
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)