MySQL에서 행 인덱스와 하드코딩된 값을 사용하여 전체 열을 업데이트하는 방법
P粉362071992
P粉362071992 2023-08-26 15:24:30
0
2
444
<p>행 색인 + email@gmail.com 형식을 사용하여 전체 <strong>email</strong> 열을 업데이트하고 싶습니다. </p> <p>이것은 내 테이블에 있는 데이터입니다</p> <테이블 클래스="s-테이블"> <머리> <tr> <번째> ID <번째> 이메일 </tr> </머리> <본문> <tr> <td>12</td> <td>abc@gmail.com</td> </tr> <tr> <td>23</td> <td>pqr@gmail.com</td> </tr> </tbody> </테이블> <p>이것이 제가 원하는 결과입니다</p> <테이블 클래스="s-테이블"> <머리> <tr> <번째> ID <번째> 이메일 </tr> </머리> <본문> <tr> <td>12</td> <td>1email@gmail.com</td> </tr> <tr> <td>23</td> <td>2email@gmail.com</td> </tr> </tbody> </테이블> <p>아래 쿼리를 시도했지만 예상한 결과를 얻지 못했습니다. </p> <pre class="brush:php;toolbar:false;">C를 사용하여 ( 이메일, row_number() 이상(ID 오름차순으로 주문)을 rowid로 선택하세요. 쿠스에서 ) 업데이트 C 이메일 설정 = rowid+'email@gmail.com'</pre> <p>그것은 단지 3개의 행이 아닙니다. 내 <code>cus</code> 테이블에는 500개 이상의 행이 있습니다. 누군가 나에게 루프가 필요하지 않은 솔루션을 제공할 수 있다면 더 좋을 것입니다. SQL 쿼리를 작성하는 데 도움을 주세요. 감사해요. </p>
P粉362071992
P粉362071992

모든 응답(2)
P粉201448898

이 방법은 작동하는 것 같지만, 조인을 사용하지 않아도 되는 더 우아한 솔루션이 있다고 생각합니다...

으아악

전체 테스트

으아악
P粉885035114

아마도 이것이 당신이 하고 싶은 일일 것입니다:

으아악

업데이트하려는 테이블(cus)与Ccte)을 연결한 다음 그에 따라 업데이트하세요.

여기 데모가 있습니다

@QisM은 실제로 email不唯一时的语法提出了疑虑,由于OP没有提到,我同意如果email에만 고유한 것이 아니며, 이는 해결책이 아닙니다. 그래서 구문을 약간 수정했습니다.

으아악

지금 확인해보세요cte带有id,并且在JOIN C ON ..条件中,我添加了匹配id. 테스트 후 이렇게 하면 이메일이 고유하지 않은 경우 문제가 해결됩니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿