SQL-ban hogyan kell megcsinálni?
Kezdő vagyok még SQL-ben, ezért a primitív kérdésem.
Van két táblám:
Persons [id, name, city_id, e-mail]
Cities [city_id, city_name]
Hogyan kell megcsinálnom azt hogy ha ki szeretném listázni a személyeket, akkor a város jelenjem meg a lekérdezésben és ne a kódja?
SELECT
`Persons`.`id`,
`Persons`.`name`,
`Cities`.`city_name`,
`Persons`.`e-mail`
FROM `Persons`
LEFT JOIN `Cities`
ON `Cities`.`city_id` = `Persons`.`city_id`
SELECT
`Persons`.`id`,
`Persons`.`name`,
( SELECT `Cities`.`city_name` FROM `Cities` WHERE `Cities`.`city_id` = `Persons`.`city_id` LIMIT 1 ) AS `city_name`,
`Persons`.`e-mail`
FROM `Persons`
Select Persons.name as Nev, Cities.city_name as Varos From `Persons` Inner Join `Cities` On Persons.city_id = Cities.city_id Group By Persons.name Order by Persons.name ASC;
Viszont nem muszáj úgy használni, hogy pl. Persons.name meg Cities.city_name, mivel nincs ugyanolyan név a két táblában, kivéve a city_id... a city_id-nál muszáj elé raknod a tábla nevét is, mivel ha nem rakod akkor nem tud különbséget tenni, hogy most mit akarsz.
Régen csináltam már MySQL-t szóval, ha hiba lenne benne akkor sorry.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!