mysql - Using an alias to form an inner join -
i have problem cant figure out, , have looked on google , similar questions on here, not quite same.
i trying build mysql query has 2 parts, first easy , have done fine, uses existing relationships, see...
select clientsites.sitename, clients.clientname, pafaddresses.posttown, pafaddresses.postcode, concat("xxxxxxx", replace(upper(pafaddresses.postcode),' ','')) jouneykeytemp, clientsites.sitetype clientsites inner join clients on clientsites.clientfk = clients.clientpk inner join pafaddresses on clients.actualpaf = pafaddresses.id
you see code alias generated concats 2 postcodes , looks xxxxxxxyyyyyy, work obvious reasons ive removed actual postcodes.
what bring in 2 fields unrelated table called journeys:
select journeykey, singledistance, singletime journeys
i want bring in singledistance , singletime, journey key = generated alias of journeykeytemp.
i have tried adding following:
inner join journeys on jouneykeytemp = journeys.journeykey
but keep getting syntax error.
any appreciated.
repeat expression in join predicate:
inner join journeys on concat("xxxxxxx", replace(upper(pafaddresses.postcode),' ','')) = journeys.journeykey
or can create subquery:
select * from( select clientsites.sitename, clients.clientname, pafaddresses.posttown, pafaddresses.postcode, concat("xxxxxxx", replace(upper(pafaddresses.postcode),' ','')) jouneykeytemp, clientsites.sitetype clientsites inner join clients on clientsites.clientfk = clients.clientpk inner join pafaddresses on clients.actualpaf = pafaddresses.id)t inner join journeys on t.jouneykeytemp = journeys.journeykey
Comments
Post a Comment