Autor Zpráva
benito
Profil *
Moderátor Str4wberry: Titulek „Oříšek pro chytré hlavy...JE TO VŮBEC REÁLNÉ“ nevystihuje podstatu dotazu. Příště zkus prosím vymyslet lepší.
Ahoj mám takový oříšek. Mám data v tabulkách

table_1
ID  | string2
----------------------------------
101 | AAA 
102 | AAA
103 | BBB
104 | DDD
.....

table_2
ID| string1                
----------------------------------
1 | AAA 
2 | AAA
3 | BBB  
4 | CCC 
....

požadovaný výsledek
ID| string   | ID_table1
----------------------------------
1 | AAA      | 101
2 | AAA      | 102
3 | BBB      | 103
4 | CCC         | NULL
.....

potřebuju získat požadovaný výsledek a nevím jak na to zkoušel sem JOIN,... ale to mi nepřiřadí různá ID_table1
??? neřešil ste to už někdo?
Kajman_
Profil *
Použijte left join.
benito
Profil *
LEFT JOIN na to pužít nejde! To mi vrací

ID| string | ID_table1
----------------------------------
1 | AAA | 101
2 | AAA | 101
...

Potřebuju aby dotaz jakmile použije 101 tak už s ním nepočítal a doplnil dalši číslo nebo null

SELECT
 
  DISTINCT (a.ID),
  a.pn,
  b.ID_component

FROM tie_wfp_pns a
LEFT JOIN vw_contain_invoices b ON a.pn = b.pn AND b.receive = 0

WHERE a.ID_stock = 1 
AND a.released = 0
GROUP BY a.ID
ORDER BY a.pn
Sir Tom
Profil
Hmm - název vůbec neodpovídá danému problému...
Kajman_
Profil *
benito:
Co použít
(poddotaz, ktery navic ocisluje stejne stringy z první tabulky)
left join
(poddotaz, ktery navic ocisluje stejne stringy z druhe tabulky)

Sir Tom:
Máš návrh na správný název? Zatím mě nic nenapadá.
Sir Tom
Profil
Kajman:
Máš návrh na správný název? Zatím mě nic nenapadá.
Původní název byl naprosto mimo problém... - napadá mě - Problémové spojení nebo Problémový výběr dat z db.

Nechci se bavit o názvu - toto není tématem daného vlákna...
benito
Profil *
....Koukám, že ten název je úplně jinej než sem tam zadával, mělo tam bej "Oříšek pro chytré hlavy :)" . PS: neznám způsob jak by se daly ty stringy očíslovat, nomohly by ste mě nasměrovat.
Kajman_
Profil *
Pro očíslování stejných stringů by se snad daly použít uživatelské proměnné, viz. druhý příklad z faq (bez having). To uděláte pro každou tabulku a pak už to je podle čeho spojovat.

Další jednodušší řešení je mít dva dotazy a jen si např. v php spojíte při výpisu řádky tak, jak po tom toužíte.
1Pupik1989
Profil
Že jsou id přesně o 100 vyšší je náhoda, nebo to tak je i v db?
Ugo
Profil
dej si tam distinct nebo group na víc sloupců (neboli jejich kombinaci, tim ti zmizí ta duplicita co nechceš)
benito
Profil *
v php to spojit nemůžu, ptotože tam už potřebuju dostat ten výsledek Kajman
benito
Profil *
1Pupik1989:
ID o 1 vyšší je náhoda
benito
Profil *
PS: všem moc díky za nápady,zatím sem to vyřešil zápisem do databáze, ale všechno co ste tu napsali ještě vyzkouším, hlavně ty uživatelský proměný

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