2014-01-26 2 views
0

Я использую sqlite3 есть имя базы данных «test.db», который содержит две таблицы, логин и менеджерSQL запроса оператор выбора

Войти таблица атрибутов

_id|username|password|manager_id 

менеджер таблицы атрибутов

manager_id|name|role 

manager_id - это внешний ключ таблицы входа. Я вставил некоторые значения в таблицу

Войти

1|gmJohn|abc|1 
2|gmJane|def|2 

менеджер

1|john|GM 
2|jane|Staff 

Я пытаюсь запросить имя, роль менеджера против это имя пользователя и пароль

для пример имя пользователя: gmJohn, пароль: abc = имя: john, Роль: GM

Я попробовал этот запрос

select name,role from login,manager where username="gmJohn" and password="abc"; 

Но это возвращает меня этот результат.

john|GM 
jane|Staff 

ожидаемые результаты

john|GM  
+0

http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html – Mihai

ответ

1

Ваш запрос не является правильным. Вы не объясняете, в каком поле вы хотите присоединиться.

попробовать что-то вроде этого:

select name, role from manager m inner join login l on l.manager_id = m.manager_id where username="gmJohn" and password="abc"; 
+0

спасибо за вашу помощь – user3429531

Смежные вопросы