Проверьте, существует ли запись в mysql

#mysql

#mysql

Вопрос:

Предположим, у меня есть следующие три таблицы.

 Staff 

id | name
---------
1    Tom
2    Mary
 
 Fulltime staff

id | name
---------
1    Tom
 
 Parttime staff

id | name
---------
2    Mary 
 

Есть ли способ, которым я могу отобразить это с помощью SQL? Или я должен добавить еще один столбец в таблицу персонала?

 Mysql

id | name | Work nature
----------------------
1    Tom    Fulltime
2    Mary   Parttime
 

Комментарии:

1. Наличие Staff таблицы enum('Parttime', 'Fulltime') имело бы больше смысла в качестве структуры.

2. Пожалуйста, ознакомьтесь с разделами Mysql Joins mysqltutorial.org/mysql-join

Ответ №1:

Если вы не хотите, чтобы у людей были разные имена, когда они работают полный или неполный рабочий день, не повторяйте имена людей.

Ничто не мешает кому-либо работать как полный, так и неполный рабочий день. Или ни то, ни другое. Вместо трех таблиц создайте одну.

 create table staff (
  id bigint primary key auto_increment,
  name varchar(255) not null,
  type enum('fulltime', 'parttime') not null
)
 

Теперь каждый человек может быть только одним типом сотрудника, имена не повторяются, и ваш выбор тривиален.