Я неопытный с SQL... Я пытаюсь выяснить, как искать мою базу данных для персонала с определенными навыками.
Я хочу создать таблицу, содержащую два столбца: имя и мастерство (ов)
В настоящий момент этот запрос выполняется следующим образом:
SELECT *
FROM User_Skills LEFT JOIN
skills ON User_Skills.Skill_id = Skills.id
WHERE Skill_id = 5 OR Skill_id = 7 // 5 & 7 are variables.
Это приводит к следующим результатам:
User_id Skill_id id name
1000 5 5 Designer
1000 7 7 Data Analysis
1001 7 7 Data Analysis
1001 5 5 Designer
Вопрос в том, правильно ли я это делаю? Я ищу конкретные навыки. Как только я нахожу навыки, должен ли я использовать User_id для выполнения второго запроса? Я не знаю, нужно ли мне дважды возвращать имя, как если бы я присоединился к таблице Users к вышеуказанному запросу. Или я должен ПРИСОЕДИНИТЬСЯ к таблице User, а затем отбирать данные, которые мне не нужны программно.
Я бы посоветовал вам взглянуть на Group_Concat