Your query works fine for me. Is this for MS SQL Server?Here's the code that I used:CREATE TABLE t1 (speciesid int not null, species varchar(20) not null)CREATE TABLE t2 (animalid int not null, animal varchar(20) not null)INSERT INTO t1 VALUES(1, 'Mammals')INSERT INTO t1 VALUES(2, 'Rodents')INSERT INTO t1 VALUES(3, 'Reptiles')INSERT INTO t2 VALUES(3, 'Skink')INSERT INTO t2 VALUES(3, 'Iguana')INSERT INTO t2 VALUES(3, 'Rattlesnake')INSERT INTO t2 VALUES(2, 'Meerkat')INSERT INTO t2 VALUES(1, 'Hippo')INSERT INTO t2 VALUES(1, 'Elk')SELECT a.animalid, s.speciesid, a.animal, s.speciesFROM t2 aINNER JOIN t1 sON s.speciesid = a.animalid ORDER By s.speciesSELECT A.animalid, S.speciesid, A.animal, S.species from t2 as A, t1 as S where S.speciesid=A.animalid order by speciesDROP TABLE t1, t2
The first SELECT query is the preferred way to join tables. The second is your query. Both return the same result set.Tara