Extra Form
PHP PHP 7.4
CMS Rhymix 2.0

안녕하십니까 불금에 질문드립니다;

 

●핵심

1.Form으로 주(week)를 input 받습니다.

2.db=mysql

3.<?php 

SELECT * FROM table WHERE date=□□□□

?>

 

어떻게 해야 input type week 로 받은 그 주에 해당하는 date를 모두 출력할수 있을까요??..

 

즐거운 불금과 주말 보내십시오!

 

  • profile

    https://solbel.tistory.com/2223

    위링크대로 날자를 일요일과 토요일날의 날자를 구한다음 그 사이에 있는 모든 숫자를 추가하여 (라이믹스라면) array에 해당 날자들을 넣어서 XML쿼리로 넘겨주시면 되겠네요..

    월이 넘어가는 경우 달력에 따라 월 일도 보정해줄 수 있도록 메소드를 만들어 줘야겠지요.

  • profile

    date는 어떤 타입으로 저장되어 있나요? date 타입? 그냥 varchar 컬럼에 20220415 이런 문자열?

  • profile profile
    Date큰 date타입으로 저장되어있습니다!
  • profile profile

    그럼 YYYY-MM-DD 형식으로 표시되겠군요. 다행히 윗분이 알려주신 소스의 포맷을 그대로 사용하셔도 되겠습니다.

    WHERE date = □□□□ 이렇게 하나의 조건으로 처리하는 것이 아니라, WHERE date >= 첫날 AND date <= 마지막날 이렇게 앞뒤 조건을 거는 것으로 생각하시면 됩니다. 아니면 WHERE date BEWEEN 첫날 AND 마지막날 이런 문법을 사용할 수도 있고요.

  • profile profile
    아하 정말 감사합니다!
    사실 오늘 머리를 싸매다가 해결했습니다

    Week로 받은 주를 day 단위로 바꾸려고만 생각했었는데
    반대로sql Week(date,1)를 통해서 해당 date가 몇번째 주인지 체크후
    Week value인 '2022-W15'를 substr로 뒤 15만 추출해서 조회 하니까 되네요!
  • profile profile
    날짜 변환을 SQL에서 처리하면 인덱스를 활용할 수 없기 때문에 훨씬 더 비효율적일 겁니다.
    레코드가 몇백 개 뿐이라면 상관없겠지만, 갯수가 많아지면 큰 차이가 나요.