그래서 가지 여기 난처한 상황에 빠진거야,이 같은 쿼리를 실행할 수있는 방법이 있다면이제한 SQL
+-----------+------+
| Timestamp | Size |
+-----------+------+
| 1-1-13 + 10.3 +
+-----------+------+
| 1-3-13 + 6.7 +
+-----------+------+
| 1-5-13 + 3.0 +
+-----------+------+
| 1-9-13 + 11.4 +
+-----------+------+
같은 테이블 설정이 내가 궁금하네요이
SELECT * FROM table ORDER BY timestamp ASC LIMIT BY (SUM(size) <= 20.0);
이는 제 3 행의 크기의 합이 단 (20)이기 때문에, 항상 종종 첫 번째 행 수도 20. 동일 3 행되지 않을 수도 처음 세 열의 잡아해야 20의 값을 가지며,이 경우 첫 번째 값만 잡아야합니다.
나는 쿼리가 실행 된 후 PHP에서 합계를 신속하게 계산할 수 있음을 이미 알고 있지만 MySQL로이를 수행하려고합니다.
그래서 당신이 실행중인 총 싶어? –
ANSI SQL에서 EVERY SINGLE ROW 출력에 일치하는 기준에 따라 일부 테이블 (관계)의 행을 선택합니다. 귀하의 예에서, 기준은 모든 새로운 행마다 변경됩니다. 확실하지는 않지만 PL/SQL 기능이 필요하다고 생각합니다. ORDER가 작동하는 방식에 유의하십시오. 하위 쿼리를 사용하는 경우 출력 결과를 정렬할지 또는 입력 조건을 일치 시킬지에 따라 결과가 달라지며 ORDER는 이와 같이 사용되지 않아야합니다. LIMIT (또는 OFFSET)은 표현식이 아닌 출력의 단순한 제한 행 수에 사용되는 것으로 가정됩니다. –