Originariamente inviato da piero.mac
select * from tabella where campo1=$campo1 and campo2=$campo2
select * from tabella where concat(campo1, campo2)=concat($campo1, $campo2)
sono identici. nel primo richiami due funzioni concat in meno e una AND in piu'. prova a vedere come la select usa l'indice oppure no.... (explain select ....)
ma non c'è la possibilità di riferirsi alla chiave primaria con un unico termine?
qualcosa tipo
select * from tabella where primary=concat($campo1, $campo2)
ho poi provato con explain (che non conoscevo) e mi dice:
1 SIMPLE abb const PRIMARY PRIMARY 6 const 1 Using index
1 SIMPLE vabb ref vabb_cod1 vabb_cod1 6 const 2743 Using where
1 SIMPLE babb index NULL PRIMARY 16 NULL 710631 Using where; Using index
non riesco però a capirne bene il significato, riesco a sfruttare le chiavi o no?
![]()

Rispondi quotando