현재 작업 표 시스템에서 주어진 날짜의 시간을 기록하지 않은 모든 사용자를 반환하는 쿼리를 작성하려고합니다. 현재 2 개의 테이블, 작업 표 및 사용자가 있습니다. 날짜 범위에 대한 작업 표에 항목이없는 사용자 목록을 반환하는 쿼리를 만들려고합니다. 하루에 작업 표 테이블에는 단 하나의 레코드 만 있습니다.이 작업은 간단해야하지만 나 자신의 삶에 어떻게 접근해야하는지 알 수 없습니다.MySQL 부재자보고 스크립트
도움이 될 것입니다 :). 하루 동안 기록 된 시간이없는 경우 또한
+-----------------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------------------+------------------+------+-----+---------+----------------+ | timesheetID | int(11) unsigned | NO | PRI | NULL | auto_increment | | timesheetForUser | int(11) unsigned | NO | | | | | timesheetForDate | date | NO | | | | | timesheetForCheckIn | int(11) | YES | | NULL | | | timesheetNotes | text | YES | | NULL | | | timesheetIsFilled | tinyint(1) | NO | | | | | timesheetNoFillReason | int(11) unsigned | NO | | | | | timesheetCreatedOn | datetime | NO | | | | | timesheetCreatedBy | int(11) unsigned | NO | | | | | timesheetUpdatedOn | datetime | YES | | NULL | | | timesheetUpdatedBy | int(11) unsigned | YES | | NULL | | +-----------------------+------------------+------+-----+---------+----------------+
+--------------------------------+---------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------------------------+---------------+------+-----+---------+----------------+ | userID | int(11) | NO | PRI | NULL | auto_increment | | userAccount | int(11) | YES | | NULL | | | userOrganization | int(11) | YES | | NULL | | | userIsEmployee | tinyint(4) | YES | | 0 | | | userEmployeeSince | date | YES | | NULL | | | userName | varchar(255) | YES | | NULL | | | userTitle | varchar(255) | YES | | NULL | | | userEmail | varchar(255) | YES | | NULL | | | userLogin | varchar(50) | YES | | NULL | | | userPassword | varchar(255) | YES | | NULL | | | userSendInvitation | tinyint(4) | YES | | NULL | | | userAddress1 | varchar(255) | YES | | NULL | | | userAddress2 | varchar(255) | YES | | NULL | | | userCity | varchar(255) | YES | | NULL | | | userCountry | char(2) | YES | | NULL | | | userState | varchar(6) | YES | | NULL | | | userStateOther | varchar(255) | YES | | NULL | | | userZip | varchar(20) | YES | | NULL | | | userPhone | varchar(50) | YES | | NULL | | | user_easypaycode | varchar(6) | YES | | NULL | | | userFax | varchar(50) | YES | | NULL | | | userCell | varchar(50) | YES | | NULL | | | userTimezone | int(11) | YES | | NULL | | | userNotes | text | YES | | NULL | | | userActive | tinyint(4) | NO | | 0 | | | userDisplayPictureType | tinyint(4) | YES | | NULL | | | userDisplayPicture | varchar(255) | YES | | NULL | | | userThumbnailPicture | varchar(255) | YES | | NULL | | | userCanWriteMessages | tinyint(4) | NO | | 0 | | | userCanWriteComments | tinyint(4) | NO | | 0 | | | userCanUploadFiles | tinyint(4) | NO | | 0 | | | userCanCreateEvents | tinyint(4) | NO | | 0 | | | userCanCreateTickets | tinyint(4) | NO | | 0 | | | userCanManageProjects | tinyint(4) | NO | | 0 | | | userCanManageUsers | tinyint(4) | NO | | 0 | | | userCanManageOrganizations | tinyint(4) | NO | | 0 | | | userCanManageUserGroups | tinyint(4) | NO | | 0 | | | userCanManageMessageCategories | tinyint(4) | NO | | 0 | | | userCanManageSetupOptions | tinyint(4) | NO | | 0 | | | userCanManageAllUsersItems | tinyint(4) | NO | | 0 | | | userCanEnterTimesheets | tinyint(4) | NO | | | | | userCanManageTimesheets | tinyint(4) | NO | | | | | userCanUseTimeclock | tinyint(4) | YES | | NULL | | | userCanOnlyUseTimeclock | tinyint(4) | YES | | NULL | | | userLastLogin | datetime | NO | | | | | userPWResetText | varchar(255) | YES | | NULL | | | userDeleted | tinyint(4) | NO | | 0 | | | userDeletedBy | int(11) | YES | | NULL | | | userDeletedOn | datetime | YES | | NULL | | | userMinHoursPerDay | decimal(10,1) | YES | | NULL | | +--------------------------------+---------------+------+-----+---------+----------------+는 작업 표에서 만든 어떤 기록도 없다.
수정하지 않고도 응답 할 수 있도록하려면 테이블 구조에 대한 자세한 정보가 필요합니다. –
사용자가이 날짜에 대해 아무 것도 기록하지 않으면이 항목을 언급해야합니다. 시간 표 테이블에 레코드가 없습니다. –
@Johnathan : 우리 모두가 짐작했다고 생각합니다. :) (관련) 열 이름은 귀하의 질문에 넣기에 유용한 정보가 될 것입니다. 당신은 그걸 압니까? –