UPDATE 문을 요청하세요.
Aug 04, 2016 am 09:22 AM
<code>table_user id user shangjiaid vip 1 用户A 2 0 2 用户B 3 0 3 用户C 2 0 4 用户D 5 0 5 用户E 5 0 6 用户F 5 0 7 用户G 2 0 8 用户H 5 0 9 用户J 2 0 10 用户K 5 0 11 用户K 5 0 12 用户K 7 0 13 用户K 12 0 更新VIP等于1 比如 id=5的这个人 下家的数量满足3个 然后更新vip=1 用一句sql能update更新? 这个应该属于递归... 就是说每个人都有上家...如果这个人下家满足3个人..然后更新VIP=1 update结果集 table_user id user shangjiaid vip 5 用户E 5 1 2 用户B 3 1</code>
답글 내용:
<code>table_user id user shangjiaid vip 1 用户A 2 0 2 用户B 3 0 3 用户C 2 0 4 用户D 5 0 5 用户E 5 0 6 用户F 5 0 7 用户G 2 0 8 用户H 5 0 9 用户J 2 0 10 用户K 5 0 11 用户K 5 0 12 用户K 7 0 13 用户K 12 0 更新VIP等于1 比如 id=5的这个人 下家的数量满足3个 然后更新vip=1 用一句sql能update更新? 这个应该属于递归... 就是说每个人都有上家...如果这个人下家满足3个人..然后更新VIP=1 update结果集 table_user id user shangjiaid vip 5 用户E 5 1 2 用户B 3 1</code>
update table_user set vip = 1 where id in (select * from (SELECT a.shangjiaid FROM
table_user as a GROUP BY a.shangjiaid having count(1) >= 3) as b)
더 나은 해결책이 있어야 할 것 같습니다. .
또 다른 제안은 Liz가 앞으로 질문을 할 때 테이블 생성 문과 데이터 채우기 문을 게시하는 것이 가장 좋다는 것입니다. 이렇게 하면 시간이 많이 절약됩니다. 아마도 더 많은 답변이 있을 것입니다.
update table set vip=1 where id=(select shangjiaid from (select from table group by shangjiaid have count()>2)t ) 이것은 아마도 아이디어일 것입니다. SQL이 잘못되었을 수 있습니다. , 당신은보세요
이렇게 복잡한 문장을 분리할 수는 있는데, 이렇게 한 번에 완성되는 복잡한 SQL 문장은 데이터 양이 많아지면 비즈니스가 특히 막힐 것 같아요.
먼저 어떤 ID에 3개 이상의 판매자 ID가 있는지 계산한 다음 VIP를 각각 1로 업데이트할 수 있습니다. 이것이 가능하지 않으면 대기열을 추가할 수도 있습니다. 이는 비즈니스에 더 좋습니다.

인기 기사

인기 기사

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법
