Autor Zpráva
Mufna
Profil
Zdravím Vás. Je nějaký (praktický) rozdíl mezi tím, když u různých tabulek v databázi používám pro název políčka s ID "id_neco" ? Tedy ne jenom "id" ? Všiml jsem si, že někdo používá vždy je název "id".
nightfish
Profil
osobně používám všude "id", protože "id_neco" neposkytuje žádnou informaci navíc
navíc by mohlo dojít k záměně a mohl bych "id_neco" považovat za cizí klíč odkazující na `neco`.`id` (ač pro označení cizích klíčů používám příponu _id)
Tomasds
Profil
Zrovna včera jsem se tady chtěl přeptat na řešení dvou ID při joinování.

Vždycky jsem používal ID, ale poslední dobou začínám používat IDzbozi, IDvystavy, IDfilmu apod, protože když chci komplet výpis ze dvou JOINovaných tabulek, tak můžu použít SELECT * FROM a nemusím se vypisovat s jednotlivými poli jen kvůli SELECT filmy.ID as IDfilmu apod.

snad to píšu srozumitelně.
Pajah
Profil
Já například taky používám s id nějakou předponu.
Třeba když mám tabulku forum_fora, tak ffid, forum_temata, tak ftid, jak tu bylo zmíněno, u JOINů je to mnohem lepší.
igamenir
Profil
taky používám jen id
samotné id považuju za identifikaci daného záznamu, a třeba userid, itemid, ownerid .. za identifikaci jiného záznamu
Tomasds
Profil
ok, tak si dovolím zneužít toto vlákno ke svému poddotazu.

Mám dvě tabulky, danou vazbu, potřebuju z nich vytáhnout něco.

SELECT filmy.ID as fID, filmy. nazev, reziseri.ID as rID, reziseri.jmeno FROM filmy LEFT JOIN reziseri ON filmy.IDrezisera = reziseri.ID


Tady mě zajímají 4 sloupce. Ale často potřebuju všechny nebo skoro všechny, takže by se hodilo místo vypisování 20 sloupců toto:

SELECT * FROM filmy LEFT JOIN reziseri ON filmy.IDrezisera = reziseri.ID


To můžu udělat za předpokladu, že v tabulkách nemám ID, ale IDfilmu, IDrezisera.
Dá se toto nějak udělat, když budu mít v tabulkách sloupec ID? Jde mi o to, abych nemusel vypisovat všechny sloupce kvůli jednomu nebo dvěma "as". Byl bych samozřejmě radši, protože chápu igamenira, cítím to stejně.
Kajman_
Profil *
Můžete vypsat vše a navíc pojmenové id.
SELECT f.*,r.*,r.id rid, f.id fid FROM filmy f LEFT JOIN reziseri r ON f.IDrezisera = r.ID
joe
Profil
Stačí jen "id". Není třeba nic připisovat, protože pokud vybíráš jen z jedné tabulky, víš že to bude id. Pokud vybíráš z více tabulek, zápis bude tabulka.id, takže zase víš, odkud to id je. Nechápu proč ve škole u nás na škole používají zbytečně zdlouhavý název a to id_neco (označují tak primární klíče), když je to zbytečné. Pokud v tabulce mám id a pak další id, které vedou na jiné id v jiných tabulkách, pak použiju zápis id_kamtovede, abych to poznal.
Tomasds
Profil
joe nepochopil, Kajman_ pochopil, díky.
joe
Profil
Tomasds
Promiň, já neodpovídal přímo tobě :) Mě si nevšímejte, Kajman_ je odborník na MySQL :)
Tomasds
Profil
joe
Tak potom se omlouvám já a dodávám: Tomasds nepochopil :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0