Permalänk
Medlem

Sql Join

Jag försöker hämta data ur två tabeller ur databasen.

Tabellerna har inget med varandra att göra, men jag behöver en rad från varje tabell och tänkte kombinera queryn.

Det verkar dock inte fungera med min vanliga

SELECT t1.namn, t2.namn FROM t1, t2 WHERE t1.id=1 AND t2.id=17

Hur ska denna fråga utryckas?

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost

Permalänk
Medlem

Du använder union

Permalänk
Medlem

#1222 - The used SELECT statements have a different number of columns

Får jag. Någon lösning?

Värt att sägas är att de två tabellerna inte har samma tabellstruktur, så som Wikipedia säger att de måste för att en UNION ska kunna ske.

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost

Permalänk
Medlem

Re: Sql Join

Citat:

Ursprungligen inskrivet av Purren
Jag försöker hämta data ur två tabeller ur databasen.

Tabellerna har inget med varandra att göra, men jag behöver en rad från varje tabell och tänkte kombinera queryn.

Det verkar dock inte fungera med min vanliga

SELECT t1.namn, t2.namn FROM t1, t2 WHERE t1.id=1 AND t2.id=17

Hur ska denna fråga utryckas?

på vilket sätt fungerar det inte? du kan inte bara säga att det inte fungerar hur ska vi kunna hjälpa dig då? queryn ser jag då inget fel på!

Visa signatur

P[a]cman äter spöken så ofta han kan.

citera mig, annars är risken överhängande att jag inte hittar tillbaka.

Permalänk
Medlem

öööh... vet inte om jag har hjärnsläpp nu men union fungerar väl som den ska även om tabellerna är helt olika. Jag kan inte minnas att union har svikit mig någon gång.

Permalänk

Jag tror trådskaparen missuppfattat vad som menas med relationsdatabas och vad man kan göra med en sådan.

Om jag läser mellan raderna så gissar jag på att du försöker få svar på två helt skilda frågor i en och samma query? Det går inte. Du kan alltså inte få svar på både a) vad dagens väder är och b) förra veckans lottorad från en och samma query. Använder du flera tabeller i en query måste du ha en relation mellan dessa.

Du måste inte ha samma tabellstruktur för att använda UNION, men du måste reurnera samma 'set' från selectarna. Alltså datatypen i en viss position måste vara samma i elementen som returneras från de olika selectarna:

SELECT aString, bInt, cDate, FROM t1 WHERE [...] UNION SELECT dString, eInt, fDate, FROM t2 WHERE [...]

Visa signatur

"Mies saa kaatua mutta ei karata." -- Adolf Ehrnrooth IR 7, Äyräpää 1944.

Permalänk
Medlem

Som pcman skrev så borde SQL-frågan som Purren skrev i sitt första inlägg borde fungera utmärkt. Testade just med den här lilla kodsnutten:

SELECT test1.id, test1.namn, test2.id from test2, test1 where test1.id = 1 and test2.id =2

Och precis som man kan gissa sig till fungerar perfekt. Sen om det är speciellt snyggt att göra på det här sättet är en annan sak.

UNION däremot lägger ju ihop resultatet på höjden och inte bredden, så det är ju inte vad som Purren var ute efter.

Permalänk
Medlem

Han skriver ju faktiskt att han vill ha en rad från varje tabell, i så fall är union ett bra alternativ. Men det behöver inte betyda att det var det han menade.

Och hans mysql-fråga fungerar som sagt bra, men den verkar onekligen inte göra det han har tänkt sig. Vi kanske behöver få en bättre beskrivning av vad han vill göra.

Permalänk
Medlem

Kul att så många aktiverar sig.

Tyvärr måste jag säga att usprungsqueryn fungerar nu ( ? )

Jag har ingen aning om vad jag ändrade, men den slutade göra uppror och fungerar fint nu. Tack för allas hjälp!

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost