webForumDet fria alternativet
Logga in / Bli medlem

Joinad sql fråga med null problem

Databaser & SQL

3 svar · 289 visningar · startad av Bjuris

Medlem sedan juli 2001514 inlägg
Trådstart#1

Jag har en sql fråga enl. följande:

SELECT
	Customer.idCustomer, 
	Customer.CustomerName,
	OfficeLocation.idOffice,
	OfficeLocation.Address, 
	OfficeLocation.Postal, 
	OfficeLocation.City, 
	OfficeLocation.Country,
	Contact.idOfficeLocation,
	Contact.Name, 
	Contact.Role, 
	Contact.Phone, 
	Contact.Mobile, 
	Contact.Fax, 
	Contact.Email,
	Applications.1,
	Applications.2, 
	Applications.3, 
	Applications.4, 
	Applications.5
FROM 
	((Customer INNER JOIN OfficeLocation ON Customer.idCustomer = OfficeLocation.idCustomer) INNER JOIN Applications ON OfficeLocation.idOffice = Applications.idOfficeLocation) INNER JOIN Contact ON OfficeLocation.idOffice = Contact.idOfficeLocation
WHERE 
	CustomerName LIKE '"+CustName+"%'" 
ORDER by 
	CustomerName

den skall plocka ut alla kunder ur systemet, vilket fungerar bra när alla tabellerna innehåller information, men om tex Applications inte innehåller någon data för den speciella kunden så visas ingen information alls, men jag vill ju ha kundinformationen i varje fall.
Jag antar att det har något med null, men vet inte hur jag skall göra.

Någon som har någon ide?

Medlem sedan juni 200032 967 inlägg
#2

Använd LEFT JOIN istället för INNER JOIN.

Mvh

Medlem sedan juli 2001514 inlägg
#3

Tjosan det var ett snabbt svar...
På alla då?

Medlem sedan juni 200032 967 inlägg
#4

Jajjenutt. Då får du null i alla fält från de tabeller där du inte har en match.

249 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)