Vinnaren i pepparkakshustävlingen!
2021-07-16, 08:57
  #1
Medlem
Rekas avatar
Hej,
Jag vill hämta alla data från 2 tabeller där kolumnen consignee i tabellen cust_invoice har siffran 8.

Med koden som nedan hämtas alla data, så jag har ju gjort något fel.

Kod:
("SELECT * FROM cust_invoice
LEFT JOIN consignee ON cust_invoice.consignee = consignee.id
UNION
SELECT * FROM cust_invoice
RIGHT JOIN consignee ON cust_invoice.consignee = consignee.id WHERE cust_invoice.consignee = 8 ");

Databasen är Mysql.
Citera
2021-07-16, 09:02
  #2
Medlem
SELECT * FROM cust_invoice
INNER JOIN consignee ON cust_invoice.consignee = consignee.id
WHERE cust_invoice.consignee = 8;
Citera
2021-07-16, 10:13
  #3
Medlem
Rekas avatar
Citat:
Ursprungligen postat av dope92ahyeah
SELECT * FROM cust_invoice
INNER JOIN consignee ON cust_invoice.consignee = consignee.id
WHERE cust_invoice.consignee = 8;

Tack för lösningen!
Citera
2021-07-17, 17:33
  #4
Moderator
Protons avatar
Citat:
Ursprungligen postat av Reka
Hej,
Jag vill hämta alla data från 2 tabeller där kolumnen consignee i tabellen cust_invoice har siffran 8.

Med koden som nedan hämtas alla data, så jag har ju gjort något fel.

Kod:
("SELECT * FROM cust_invoice
LEFT JOIN consignee ON cust_invoice.consignee = consignee.id
UNION
SELECT * FROM cust_invoice
RIGHT JOIN consignee ON cust_invoice.consignee = consignee.id WHERE cust_invoice.consignee = 8 ");

Databasen är Mysql.

Citat:
Ursprungligen postat av dope92ahyeah
SELECT * FROM cust_invoice
INNER JOIN consignee ON cust_invoice.consignee = consignee.id
WHERE cust_invoice.consignee = 8;
Får jag fråga varför du krånglade till det så mycket från början?

På nåt sätt har du ju snappat upp LEFT och RIGHT OUTER JOIN så hur kommer det sig att du missat INNER JOIN?
Citera
2021-07-17, 19:10
  #5
Medlem
Rekas avatar
Citat:
Ursprungligen postat av Proton
Får jag fråga varför du krånglade till det så mycket från början?

På nåt sätt har du ju snappat upp LEFT och RIGHT OUTER JOIN så hur kommer det sig att du missat INNER JOIN?

Jag visste först inte att MySql saknade stöd för FULL JOIN och blev då lite ställd.
Googlade runt lite och flera källor gav kodförslag likt detta för att 'simulera' en FULL JOIN:

https://tableplus.com/blog/2018/07/m...ight-full.html
Kod:
SELECT * FROM a
LEFT JOIN b ON a.id = b.id
UNION
SELECT * FROM a
RIGHT JOIN b ON a.id = b.id

Trodde dessutom inte att INNER JOIN skulle ge mig det jag ville ha, åtminstone inte efter att ha läst igenom sidan som ovan.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback