While dentro de mysql_query
Pessoal boa noite,
Anteriormente abri um topico na area de SQL porem logo já vi a necessidade de usar o php nessa consulta bem.
Estou montando uma consulta SQL na qual preciso usar o CASE, porem os cases devem ser inseridos de forma automatica, a intenção é formar uma tabela dinamica na qual na vertical são mostrados os usuarios e na horizontal os projetos.
Quem me deu a ideia do case foi o amigo Motta do forum.
Testado em sql funcionou perfeitamente, porem preciso que os cases surjam de forma automatica já que um novo projeto pode surgir a qualquer momento.
Eu montei um código porem não está funcionando, na verdade eu não sei se é possivel adicionar um case dentro de um while.
Bem deem uma olhada no que fiz.
$busca_pro = mysql_query("select pro.type_id, pro.description, dat.type_id, dat.data_date From time_types pro, time_data dat Where dat.type_id = pro.type_id and dat.data_date between '$start_date' and '$end_date' Group by pro.type_id order by pro.type_id")or die(mysql_error());//faz a busca com os projetos do periodo /*while ($result = mysql_fetch_array($busca_pro)) { print "sum(case when pro.type_id = '$result[type_id]' then dat.hours else '' end) '$result[description]',<br>"; } Aqui constatei que o While está funcionando pois retorna os valores corretos.*/ $result_pro = mysql_query ("select dat.user_id, dat.type_id, dat.hours pro.type_id, pro.description, usr.user_id, usr.fname, " while (@$result = mysql_fetch_array($busca_pro)) { " sum(case when pro.type_id = '$result[type_id]' then dat.hours else 0 end) '$result[description]', " } " sum(case when pro.type_id = '000010' then 1 else 0 end) 'UTC BASUL CARREG' from time_data dat, time_types pro, user_info usr where dat.type_id = pro.type_id AND usr.user_id = dat.user_id AND dat.data_date between '$start_date' and '$end_date' group by dat.user_id")or die(mysql_error());//faz a busca com os projetos do periodo
Pessoal tem algo que eu possa usar fora o case ?
Discussão (4)
Carregando comentários...