Recent

Author Topic: join 2 tables  (Read 2973 times)

christensen

  • Full Member
  • ***
  • Posts: 127
join 2 tables
« on: November 08, 2011, 07:27:43 pm »
Hi i'm trying to join 2 tables and the result to display in one row but only in 2 rows i can.

Here are the tables:

Tb_clients
- client_id
- client_name
- client_phone
- id_city_born(tb_city.city_id)
- id_city_died(tb_city.city_id)

tb_city
- city_id
- city_name
- id_country(tb_country)

Code: [Select]
select * from tb_client left outer join  tb_city on tb_client.id_city_born=tb_city.city_id or tb_client.id_city_died=tb_city.city_id the result is displayed in 2 fields.

Code: [Select]
select * from tb_client left outer join  tb_city on tb_client.id_city_born=tb_city.city_id left outer  join tb_city city_name on tb_client.id_city_died=tb_city.city_id the first 'join' work but in the second i get NULL fields.
Lazarus 1.4.4, FPC 2.6.4, Windows 7 64bit, AMD Athlon 7750 black edition, Asus M3N78-CM
Lenovo L540 i7-4702MQ, Windows 10 x64,Lazarus 1.6.2,FPC 3.0

ludob

  • Hero Member
  • *****
  • Posts: 1173
Re: join 2 tables
« Reply #1 on: November 08, 2011, 08:38:38 pm »
Quote
select * from tb_client left outer join  tb_city on tb_client.id_city_born=tb_city.city_id left outer  join tb_city city_name on tb_client.id_city_died=tb_city.city_id
The last part should be tb_client.id_city_died=city_name.city_id .  tb_city is aliased to city_name. When you use tb_city it refers to the tb_city in the first join.

christensen

  • Full Member
  • ***
  • Posts: 127
Re: join 2 tables
« Reply #2 on: November 08, 2011, 08:48:58 pm »
Many Thanks!  ... works like a charm




« Last Edit: November 09, 2011, 07:36:28 pm by christensen »
Lazarus 1.4.4, FPC 2.6.4, Windows 7 64bit, AMD Athlon 7750 black edition, Asus M3N78-CM
Lenovo L540 i7-4702MQ, Windows 10 x64,Lazarus 1.6.2,FPC 3.0

 

TinyPortal © 2005-2018