예:
id user_id 1 2,32,4 2 3,63,2 3 4,62,7
user_id
에서 2가 포함된 id
을 꺼내면 결과 => 1, 2(별도의 2 포함)
like 메소드는 당연히 안 먹힌다
간결하고 아름다운 sql문
보기 아래층에 필드 구조 변경에 대한 큰 이야기가 있지만 현재로서는 허용되지 않을 수 있습니다. 프로젝트 전체가 오픈되어 있기 때문에 제가 이곳으로 이동하고 다른 곳에서 이 곳을 호출하게 되면 현장 구조의 변화로 인해 예상치 못한 문제가 발생할 수 있습니다.
밤 주기:
id user_id 1 2,32,4 2 3,63,2 3 4,62,7
user_id
2가 들어 있는 을 꺼내세요. id
, 결과 =》1,2 (별도의 2 포함)
좋아요 방법은 확실히 작동하지 않습니다
간결하고 아름다운 SQL 문
아래층에서 필드 구조 변경에 대해 많은 말을 하는 사람을 봤습니다. 지금은 허용되지 않을 수 있습니다. 프로젝트 전체가 오픈되어 있기 때문에 제가 이곳으로 이동하고 다른 곳에서 이 곳을 호출하게 되면 현장 구조의 변화로 인해 예상치 못한 문제가 발생할 수 있습니다.
SELECT id FROM table WHERE find_in_set('2',user_id);
id user_id
1 ,2,32,4,
2 ,3,63,2,
3 , 4,62,7,
이렇게 바꾸면 처럼 하기 편하고 할 수도 있어요
사실 중간 테이블을 나누는 게 더 좋습니다
테이블 제품
id 1 2 3
테이블 사용자
user_id 2 3 4 6 32 62 63
중간 테이블
product_id user_id 1 2 1 32 1 4 2 2 2 63 2 3 3 4 3 62 3 7
그래도 테이블 구조를 변경하는 것이 좋습니다! 이것은 정말 쉽지 않습니다. 아니면
id user_id 1 [2],[32],[4] 2 [3],[63],[2] 3 [4],[62],[7]
등의 데이터 저장 방식을 변경하고 퍼지 쿼리를 사용하세요. 하지만 여전히 테이블 데이터를 수정하는 것이 좋습니다
mysql5.7에는 json 유형이 있습니다