Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Araújo Fagundes

Consulta MySQL e PHP

Recommended Posts

Galera, consegui acertar a consulta no mysql query ficou assim;

SELECT DISTINCT
	empresa.id_empresa,
	empresa.num_empresa,
	empresa.nome,
	empresa.id_status_empresa,
	empresa.cpf_cnpj,
	empresa.razao_social
FROM 
	empresa
WHERE 
	empresa.id_lixeira = '1' 
AND 
	(SELECT count(*) from agenda_extra WHERE agenda_extra.data_compromisso > DATE_SUB(CURDATE(), INTERVAL[value] DAY) AND agenda_extra.id_empresa = empresa.id_empresa AND agenda_extra.id_lixeira = '1' ) = 0
ORDER BY 
	empresa.nome ASC
LIMIT 0,40

Agora preciso transforma para um modelo parecido como este;

 

"MODELO;"

<input name="consulta@agenda_extra*ultimos_x_dias"
		value="
 FROM[1].table=agenda_extra;
 
			WHERE[0].operator=AND;
			WHERE[0].table=empresa;
			WHERE[0].field=id_empresa;
			WHERE[0].comparator==;
			WHERE[0].value=agenda_extra.id_empresa;
 
			WHERE[1].operator=AND (;
 WHERE[1].table=agenda_extra;
 WHERE[1].field=data_compromisso;
 WHERE[1].comparator=<=;
 WHERE[1].value=DATE_SUB(CURDATE(), INTERVAL [value] DAY);

 WHERE[2].operator=OR;
 WHERE[2].table=agenda_extra;
 WHERE[2].field=data_compromisso;
 WHERE[2].comparator=>=;
 WHERE[2].value=CURDATE());
 
 WHERE[3].operator=AND;
 WHERE[3].table=agenda_extra;
 WHERE[3].field=id_lixeira;
 WHERE[3].comparator==;
 WHERE[3].value='1';
		"
		type="hidden" />

---------------

 

podem me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Araújo, não entendi bem o que tu quer mano... Pode explica melhor?

 

A.H.P, assim criei uma consulta no mysql query, ele está funcionando.

so que agora eu preciso transforma ele naquele modelo que eu coloquei abaixo.

o modelo é só para seguir como eu preciso.

 

entendeu?, é transformar a consulta criada na query e transformar no modelo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não...Imagem Postada

 

Se num quer fazer uma consulta pelo PHP???

 

Porque o que ta escrito ali no "modelo" é um campo de texto onde esta escrito toda a sua query.

 

Não consigo entender a finalidade disso...Imagem Postada

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Araújo Fagundes

 

Posso saber a finalidade disso? Quem sabe não encontramos uma solução mais simples...

 

Daniel é o seguinte,

coloquei uma consulta que eu consigo fazer no mysql , que é o primeiro item.

abaixo dele tem apenas um modelo de WHERE, que preciso fazer utilizando a consulta query.... mas tem que ser em where...

 

você tem msn?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, apesar de ainda não ter entendido a sua pretensão, qual a dificuldade de fazer isso?

 

Você já tem o SQL funcionando, você já tem um modelo para adaptá-lo. Mãos à obra, não?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, apesar de ainda não ter entendido a sua pretensão, qual a dificuldade de fazer isso?

 

Você já tem o SQL funcionando, você já tem um modelo para adaptá-lo. Mãos à obra, não?

 

Daniel, o problema é que não estou conseguindo acertar a WHERE...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Araújo,

 

O pessoal não está conseguindo lhe ajudar, porque ninguém está conseguindo compreender o que você precisa.

 

Tente explicar, claramente o problema. Você diz "transformar a consulta criada na query no modelo",

 

Que tipo de modelo é esse ?

É algum template engine ?

É alguma ferramenta ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Araújo

 

Você não está conseguindo acertar a cláusula WHERE da instrução SQL? Já testou ela diretamente no front do banco?

 

SIM, ela funciona no banco.

 

so que quando monto dessa forma;

-------

<input name="consulta@agenda_extra*id_status_padrao"

value="

FROM[1].table=agenda_extra;

 

WHERE[0].operator=AND;

WHERE[0].table=empresa;

WHERE[0].field=id_empresa;

WHERE[0].comparator==;

WHERE[0].value=agenda_extra.id_empresa;

 

WHERE[1].operator=AND;

WHERE[1].table=agenda_extra;

WHERE[1].field=id_status_padrao;

WHERE[1].comparator==;

WHERE[1].value='[value]';

 

WHERE[2].operator=AND;

WHERE[2].table=agenda_extra;

WHERE[2].field=id_lixeira;

WHERE[2].comparator==;

WHERE[2].value='1';

"

type="hidden" />

------------

ele da erro, mas sei que ele está dando erro quando entra na where[1].

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, tá melhorando.

 

Vamos lá:

 

Pode ter problemas aqui ó:

 

<input name="consulta@agenda_extra*id_status_padrao"

value="

FROM[1].table=agenda_extra;

 

WHERE[0].operator=AND;

WHERE[0].table=empresa;

WHERE[0].field=id_empresa;

WHERE[0].comparator==;

WHERE[0].value=agenda_extra.id_empresa;

 

WHERE[1].operator=AND;

WHERE[1].table=agenda_extra;

WHERE[1].field=id_status_padrao;

WHERE[1].comparator==; (O operador de comparação da linguagem SQL é só um =

WHERE[1].value='[value]'; (De onde vem este valor?)

 

WHERE[2].operator=AND;

WHERE[2].table=agenda_extra;

WHERE[2].field=id_lixeira;

WHERE[2].comparator==;

WHERE[2].value='1';

"

type="hidden" />

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera sei que não estou sabendo explicar a você de uma forma melhor, mas preciso muito dessa ajuda.

 

abaixo é apenas um modelo de uma WHERE que costumo usar para minhas consultas;

 

<input name="consulta@agenda_extra*ultimos_x_dias"

value="

FROM[1].table=agenda_extra;

 

WHERE[0].operator=AND;

WHERE[0].table=empresa;

WHERE[0].field=id_empresa;

WHERE[0].comparator==;

WHERE[0].value=agenda_extra.id_empresa;

 

WHERE[1].operator=AND (;

WHERE[1].table=agenda_extra;

WHERE[1].field=data_compromisso;

WHERE[1].comparator=<=;

WHERE[1].value=DATE_SUB(CURDATE(), INTERVAL [value] DAY);

 

WHERE[2].operator=OR;

WHERE[2].table=agenda_extra;

WHERE[2].field=data_compromisso;

WHERE[2].comparator=>=;

WHERE[2].value=CURDATE());

 

WHERE[3].operator=AND;

WHERE[3].table=agenda_extra;

WHERE[3].field=id_lixeira;

WHERE[3].comparator==;

WHERE[3].value='1';

"

type="hidden" />

-----------------------------------------

abaixo desse modelo é uma query que funciona muito bem no banco, porém preciso colocar, utilizar ele de forma como a WHERE que eu coloquei acima.

 

entenderam?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, tá melhorando.

 

Vamos lá:

 

Pode ter problemas aqui ó:

 

<input name="consulta@agenda_extra*id_status_padrao"

value="

FROM[1].table=agenda_extra;

 

WHERE[0].operator=AND;

WHERE[0].table=empresa;

WHERE[0].field=id_empresa;

WHERE[0].comparator==;

WHERE[0].value=agenda_extra.id_empresa;

 

WHERE[1].operator=AND;

WHERE[1].table=agenda_extra;

WHERE[1].field=id_status_padrao;

WHERE[1].comparator==; (O operador de comparação da linguagem SQL é só um =

WHERE[1].value='[value]'; (De onde vem este valor?)

 

WHERE[2].operator=AND;

WHERE[2].table=agenda_extra;

WHERE[2].field=id_lixeira;

WHERE[2].comparator==;

WHERE[2].value='1';

"

type="hidden" />

 

Daniel estava pensando em algo dessa forma, porém quando chega na where[1], ja apresenta erro.

 

<input name="consulta@agenda_extra*ultimos_x_dias"

value="

WHERE[0].operator=AND;

WHERE[0].table=empresa;

WHERE[0].field=id_empresa;

WHERE[0].comparator==;

WHERE[0].value=agenda_extra.id_empresa;

 

WHERE[1].operator=AND;

WHERE[1].table=agenda_extra;

WHERE[1].field=data_compromisso;

WHERE[1].comparator=>=;

WHERE[1].value= DATE_SUB(CURDATE(), INTERVAL[value] DAY); <- aqui ele faz uma consulta das datas que não teve alteração.

 

WHERE[2].operator=AND;

WHERE[2].table=agenda_extra;

WHERE[2].field=id_lixeira;

WHERE[2].comparator==;

WHERE[2].value='1';

 

"

type="hidden

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, pelo menos o tal modelo eu entendi.

 

Cada WHERE[] é uma parte da SQL dele. OPERADOR, TALBE, FIELD, COMPARADOR e VALUE se repetem e apos o "=" eles tem seu respectivos valores discriminados.

 

Creio que o que ele queira seja ordena-los em "variaveis".

 

Estou certo @Araújo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.