사용자 로그인 정보를 저장하는 테이블이 있습니다. 테이블은 사용자의 로그인 정보를 특정 시스템에 저장합니다.mysql- mysql 테이블에서 중복 값을 무시합니다.
CREATE TABLE IF NOT EXISTS `login_info` (
`id` int(11) NOT NULL,
`staffID` int(11) NOT NULL,
`logDate` date NOT NULL,
`status` int(11) NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=latin1;
것입니다, 사용자 기록의 일부는 다음과 같습니다 : 그래서, 시스템에 대한 사용자 로그인이, 그것은 내 테이블에 저장할 정보 및 상태 필드가 1
로 설정되어있는 경우이 내 테이블 구조 복제하고 나는 그들을 피하려고 노력하고있다. 즉, 몇 명의 사용자가 시스템에 두 번 이상 로그인하는 것입니다. 따라서 특정 날짜에 둘 이상의 레코드가있을 수 있으며 다른 날에는 전혀 로그인하지 않은 경우 레코드가 없을 것입니다.
당신은 알고INSERT INTO `login_info` (`id`, `staffID`,`logDate`, `status`) VALUES
(1, 100, '2016-10-01',1),
(2, 100, '2016-10-01',1),
(3, 100, '2016-10-01',1),
(4, 101, '2016-10-01',1),
(5, 101, '2016-10-01',1),
(6, 102, '2016-10-01',1),
(7, 100, '2016-10-02',1),
(8, 101, '2016-10-02',1),
(9, 101, '2016-10-02',1),
(10, 102, '2016-10-02',1),
(11, 103, '2016-10-02',1),
(12, 100, '2016-10-03',1),
(13, 101, '2016-10-03',1),
(14, 102, '2016-10-03',1),
(15, 103, '2016-10-03',1),
(16, 100, '2016-10-04',1),
(17, 100, '2016-10-04',1),
(18, 102, '2016-10-04',1),
(19, 103, '2016-10-04',1);
, ID 103
와 2016-10-01
에 3 번에 확인 ID 100
및 직원과 직원이 모두 로그인하지 않았다 :
저는 매일 생각 나는 레코드를 가져 오려고합니다. 나는 생각하지 않습니다.
는 여기에 내가 내가 무엇을 찾고 가져 오는 아니에요
select staffID from login_info WHERE logDate >= '2016-10-01' AND status=1;
및
select logDate from login_info WHERE logDate >= '2016-10-01' AND status=1;
을 시도한 FIDDLE
입니다.
이
내가 달성하기 위해 노력하고있어 무엇 :id staffID logDate status
3 100 2016-10-01 1
5 101 2016-10-01 1
6 102 2016-10-01 1
7 100 2016-10-02 1
9 101 2016-10-02 1
10 102 2016-10-02 1
11 103 2016-10-02 1
12 100 2016-10-03 1
13 101 2016-10-03 1
14 102 2016-10-03 1
15 103 2016-10-03 1
17 100 2016-10-04 1
18 102 2016-10-04 1
19 103 2016-10-04 1
10 월 2 일 이후 날짜를 지정하는 조건이 있습니다. 왜 10 월 1 일부터 기록을 얻을 수 있습니까? – Mureinik
오타라고 생각하십시오. 지금 바로 수정하십시오. @Mureinik @ –