2013-06-24 3 views
-3

У меня есть 3 таблицы:запрос в sqlite3

  • ТАБЛИЦЫ компании (_ID, имя);
  • TABLE employee (_id, name, idCompany);
  • Задача TABLE (_id, name, idCompany, idEmployee);

Мне нужен запрос, который возвращает все taks, хранящиеся в моей БД, и показывает имя компании, сотрудника. Я имею в виду, я должен вернуть что-то вроде этого:

TABLE РЕЗУЛЬТАТ (_id, имя, idCompany, idEmployee, nameCompany, nameEmployee)

атрибуты idEmployee и idCompany может быть пустым.

Примечание: Я использую sqlite3, поэтому я могу использовать только LEFT JOIN и INNER JOIN.

+0

Я не хочу влиять на ответ, потому что, может быть, есть лучший способ сделать это. – kiduxa

+0

Как вы можете получить nameCompany, nameEmployee, если они не находятся ни в одной из баз данных? – Bit

+3

@kiduxa, что не работает этот сайт, покажите, что у вас есть, если вы хотите помочь. – Bit

ответ

3

Не уверен, насколько ограничены sqlite3 есть, но это может заставить вас начать:

SELECT task._id, task.name, task.idCompany, task.idEmployee, 
    company.name as nameCompany, employee.name as nameEmployee 
FROM task 
LEFT JOIN company ON task.idCompany = company._id 
LEFT JOIN employee ON task.idEmployee = employee._id