2017-01-31 6 views
0

Оператор Select возвращает только имена техников, которые не являются нулевыми. Поскольку техническим специалистам еще не назначено открывать билеты, мне нужно это, чтобы вернуть все коды продуктов, независимо от того, что имя технологии заполнено или равно нулю.SELECT Statement в C# Return Если Null (Visual Studio)

string selectStatement = 
      "SELECT ProductCode, DateOpened, Customers.Name AS CustName, " + 
      "Technicians.Name as TechName, Title, DateClosed " + 
      "FROM Incidents " + 
      "JOIN Customers ON Incidents.CustomerID = Customers.CustomerID " + 
      "JOIN Technicians ON Incidents.TechID = Technicians.TechID " + 
      "WHERE DateClosed IS NULL " + 
      "ORDER BY DateOpened"; 
+1

[Визуальное представление Регистрация] (https://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins) –

+0

Если вы используете 'JOIN' вы на самом деле использовать' ВНУТРЕННИЙ JOIN' –

ответ

3

Изменить этот код

"JOIN Technicians ON Incidents.TechID = Technicians.TechID " + 

к этому

"LEFT JOIN Technicians ON Incidents.TechID = Technicians.TechID " + 
0

вы можете использовать внутреннее соединение, как показано ниже:

"inner join Technicians ON Incidents.TechID = Technicians.TechID " 

окончательного запроса

string selectStatement = 
     "SELECT ProductCode, DateOpened, Customers.Name AS CustName, " + 
     "Technicians.Name as TechName, Title, DateClosed " + 
     "FROM Incidents " + 
     "inner JOIN Customers ON Incidents.CustomerID = Customers.CustomerID " + 
     "inner JOIN Technicians ON Incidents.TechID = Technicians.TechID " + 
     "WHERE DateClosed IS NULL " + 
     "ORDER BY DateOpened";