2013-10-07 5 views
0

php와 mysql을 사용하여 날짜가 테이블 열에 몇 번이나 있는지 계산할 수 있습니까?날짜를 사용한 횟수를 계산하는 방법은 무엇입니까?

나는 날짜의 양이 행

예를 들어

에 사용할 수 제한 할 수있는 방법을 알아 내려고 노력하고 있어요 :

1 1 0000-00-00 2 yes  2013-10-06 20:07:17 2013-10-06 20:07:17 
2 1 0000-00-00 4 yes 1 2013-10-06 20:19:31 2013-10-06 20:19:31 
3 1 2013-10-15 2 yes 1 2013-10-06 20:22:14 2013-10-06 20:22:14 
4 1 2013-10-30 3 yes 1 2013-10-06 21:07:28 2013-10-06 21:07:28 

내가 2013년 10월 30일가있는 경우 오류를 반환 할 5 번 사용되었습니다.

나는 모델을 사용하여 Laravel 4 사용하고 데이터를 저장하고

if (<<<<code goes here???>>>>>){ 
     return Redirect::to('')->withErrors($full)->withInput(); 
    } 

    $schedule->userID = $user->id; 
    $schedule->date = $dateFormat; 
    $schedule->block = $input['timeslot']; 
    $schedule->status = "1"; 

    $schedule->save(); 
+4

'code goes here' ---'<<<< 직업에 대한 지불은 여기에 있습니다 >>>>>' – zerkms

+0

아마도 수동적 공격적 발언보다 도움을 주려고 여기에 모두 협력 할 수 있습니다. – Lynx

+3

좀 더 구체적으로 물어 보면 도움에 집중할 수 있습니다. laravel에서 SQL 쿼리를 수행하는 방법을 알고 있습니까? 순수한 SQL에서 필요한 것을 선택하는 방법을 알고 있습니까? – zerkms

답변

1

:

Schedule::where('timeslot', '=', $date)->count() 또한이 코드를 여기 저기에 사용하면 query scope으로 만들 수 있으므로 Schedule :: countForTimeslot ($ date)과 같은 형식으로 호출하거나 더 복잡한 쿼리의 일부로 호출 할 수 있습니다. 모델.

+0

웃긴 케이시의 어젯밤을 본 직후에 실제로 당신의 제안으로 바꿨습니다. 그의 코드는 실제 날짜가 아닌 모든 행을 세고있었습니다 .. 나는 매우 유용한 감사 봉오리처럼 보이는 쿼리 스코프를 살펴볼 것입니다! – Lynx

1

당신이

SELECT COUNT (id) FROM table WHERE DATE(date_field) = :date 
입니다 원하는 SQL 문을

행이 영향을 계산하는 데 사용되어야를 rowCount를 사용하지 않는 (삭제 또는 업데이트처럼하는) 당신은 또한이 같은 뭔가를 할 수

+0

'COUNT ID'가 올바르지 않습니다. 'COUNT (*)'는 – zerkms

+0

이 맞습니다. id가 인덱싱되고 null을 허용하지 않는다면 성능 차이가 없어야합니다. 죄송합니다. – Casey

+0

나는 COUNT() 함수에 대해 생각하고 있었다. 그러나 성능에 대해 걱정했습니다. 그들의 PHP에서 이것을 달성하는 방법은 무엇입니까? – Lynx

관련 문제