В базе данных у меня есть таблица имен пользователей, и у меня есть таблица юрисдикции. У меня также есть промежуточная таблица для назначения пользователя одной или нескольким юрисдикциям.Заявление MySql для выбора на основе столбца в промежуточной таблице
стол сотрудник
- идентификатор пользователя (первичный ключ)
- ПгвЬЫате
- LastName
записей:
+--------+-----------+----------+
| userID | firstName | lastName |
+--------+-----------+----------+
| 6 | John | Doe |
| 11 | lisa | lopez |
+--------+-----------+----------+
юрисдикций таблица
- JURID (первичный ключ)
- область
записей:
+-------+--------------+
| jurID | jurisdiction |
+-------+--------------+
| 1 | California |
| 2 | Texas |
| 3 | Washington |
| 4 | South Dakota |
| 5 | Alaska |
| 6 | Ohio |
+-------+--------------+
user_jurisdiction
- идентификатора пользователя (Foriegn ключ, ссылающихся на сотрудник идентификатор пользователя)
- JURID (Foriegn ключ, ссылающихся на юрисдикции JURID)
записей:
+--------+-------+
| userID | jurID |
+--------+-------+
| 6 | 2 |
| 6 | 3 |
| 11 | 2 |
+--------+-------+
Я пытался в течение нескольких часов, чтобы придумать sql, который выберет/перечислит всех работников из «Техаса». Я использовал много препирательств этого заявления sql, но не успел:
SELECT jurisdictions.jurisdiction,
employees.firstName
FROM jurisdictions,
employees
INNER JOIN user_jurisdictions
ON user_jurisdictions.jurID = jurisdictions.jurID AND
user_jurisdictions.userID = employees.userID
WHERE jurisdictions.jurisdiction = "Texas";
Но я не имел успеха. В какой команде sql будет представлен список сотрудников, участвующих в юрисдикции. Jurisdiction = «Texas»;
Спасибо. Являются ли «сотрудники» такими же, как «сотрудники AS»? – dman
@ dhee да. ключевое слово 'AS' * необязательно *. –
Может ли моя промежуточная таблица извлечь выгоду из первичного ключа, даже если я не использую/не нуждаюсь в первичном ключе для этого? – dman