ENC: Consulta complexa

Pequena falha.
Voc=EA pode tirar a tabela COMPONENTE das cl=E1usulas FROM mais =
internas. A n=E3o
ser que voc=EA deseje trabalhar com a descri=E7=E3o e n=E3o com o =
c=F3digo do
componente. Mas neste caso, ela s=F3 vai onerar a consulta.

-----Mensagem original-----
De: F=E1bio L=FAcio Meira [mailto:fabiomeira [at] saocamilo-es.br]
Enviada em: quinta-feira, 20 de outubro de 2005 11:50
Para: win32 [at] lists.mysql.com
Assunto: RES: Consulta complexa

Camarada. Testei a solu=E7=E3o proposta e realmente ela =E9 funcional. =
Se voc=EA for
realizar muitas consultas, indexe todos os campos que s=E3o utilizados =
no
processo de jun=E7=E3o - chaves prim=E1ria e estrangeira (na vers=E3o =
INNODB isto j=E1
=E9 obrigat=F3rio). Esta indexa=E7=E3o acelera a consulta, por=E9m =
atrasa a
manipula=E7=E3o (inser=E7=E3o, altera=E7=E3o e exclus=E3o).
[]s

-----Mensagem original-----
De: F=E1bio L=FAcio Meira [mailto:fabiomeira [at] saocamilo-es.br]
Enviada em: quinta-feira, 20 de outubro de 2005 11:30
Para: win32 [at] lists.mysql.com
Assunto: RES: Consulta complexa

Concordo com o Daniel. Gere as tabelas no esquema:



equipamento =3D codigo | descricao

componente =3D codigo | descricao

eq_cp =3D equipamento | componente





Talvez uma solu=E7=E3o poss=EDvel seja:



select descricao

from equipamento e

where

exists

(select *

from componente c, eq_cp ec

where e.codigo =3D ec.equipamento and

ec.componente in (cod1, cod2, cod3, ..., codn)) --> =
componentes
desejados

and

not exists

(select *

from componente c, eq_cp ec

where e.codigo =3D ec.equipamento and

ec.componente in (cod1, cod2, cod3, ..., codn)); --> =
componentes
n=E3o desejados





Por=E9m eu n=E3o testei.

[]s





-----Mensagem original-----
De: Franco Catena [mailto:facatena [at] surson.com.br]
Enviada em: quinta-feira, 20 de outubro de 2005 07:27
Para: win32 [at] lists.mysql.com
Assunto: Consulta complexa





Bom dia,



estou num dilema, tenho que fazer um cadastro que poderia gerar algo:



tabela 1 1 ---------->N tabela 2



A tabela um s=E3o os dados gerais de um equipamento e a tabela dois sao =
as

coisas que este esquipamento pode ou nao ter. Bom occorre que para cada

equipaemnto eu posso ter at=E9 700 itens na tabela 2.

ex:



equipamento A tem dos 700 possiveis 400 itens e termos 3.000 =
equipementos

cadastrados



eu pensei em fazer um unico registro e desprezar a normalizacao com 750

campos( 50 agrupando os dados gerais do equipamento e mais 700 registor =
sdo

tipo boleano) Contudo isso ficaria um registro enorme.



Pergunta:



Eu preciso fazer a seguinte consulta:



se fosse normalizado



qual o numero do equipamento ( tabela 1 ) que tem o item 1 , 2 , 3, 134 =
mas

que nao tenha o Item 24, 38



Eu havia pensado em s=F3 gravar os itens que existissem no equipamento =
para

economizar espaco. Sera que =E9 possivel? como fazer esse select?



Alguem pode me ajudar?



Franco Catena







--

No virus found in this outgoing message.

Checked by AVG Anti-Virus.

Version: 7.0.344 / Virus Database: 267.12.4/143 - Release Date: =
19/10/2005





--

MySQL Windows Mailing List

For list archives: http://lists.mysql.com/win32

To unsubscribe:
http://lists.mysql.com/win32?unsub=3Dfabiomeira [at] saocamilo-es .br



--
MySQL Windows Mailing List
For list archives: http://lists.mysql.com/win32
To unsubscribe:
http://lists.mysql.com/win32?unsub=3Dfabiomeira [at] saocamilo-es .br


--
MySQL Windows Mailing List
For list archives: http://lists.mysql.com/win32
To unsubscribe: http://lists.mysql.com/win32?unsub=3Dgcdmw-win32 [at] m.gmane.org
fabiomeira [ Do, 20 Oktober 2005 15:54 ] [ ID #1021975 ]

Re: Consulta complexa

Pessoal, vamos tentar manter a l=EDngua padr=E3o, at=E9 me assustei com a
quantidade de usu=E1rios falantes de portugu=EAs, mas a lista =E9
frequentada na maioria por pessoas que falam ingl=EAs e fica at=E9 feio.
Ali=E1s, deve existir uma lista em portugu=EAs, vou at=E9 dar uma olhada.

Let's just try to keep it english people. I shall look for an
portuguese speaking mysql list, soon, when I have the time.

PS: Gotta love subqueries. How could I survive before them?!

--
Daniel da Veiga
Computer Operator - RS - Brazil
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCM/IT/P/O d-? s:- a? C++$ UBLA++ P+ L++ E--- W+++$ N o+ K- w O M- V-
PS PE Y PGP- t+ 5 X+++ R+* tv b+ DI+++ D+ G+ e h+ r+ y++
------END GEEK CODE BLOCK------

--
MySQL Windows Mailing List
For list archives: http://lists.mysql.com/win32
To unsubscribe: http://lists.mysql.com/win32?unsub=3Dgcdmw-win32 [at] m.gmane.org
Daniel da Veiga [ Do, 20 Oktober 2005 16:12 ] [ ID #1021978 ]
Datenbanken » gmane.comp.db.mysql.windows » ENC: Consulta complexa

Vorheriges Thema: Fw: Consulta complexa
Nächstes Thema: RES: Consulta complexa