데이터베이스 스키마를 변경하고 accounts/join 테이블 조인 테이블을 사용하여 사용자/계정 간의 관계를 1-1에서 many to many로 이동했습니다.many to many to one (mysql)
그래서 우리는
우리의 데이터는 아직 1-1이다 (USER_ID 및 ACCOUNT_ID) 계정, 사용자 accounts_users을 가지고, 우리는 다시 이동하기로 결정했다. 그래서 나는 다시 이동 SQL이 필요합니다
내가 사용 마이그레이션하려면
INSERT INTO accounts_users (account_id,user_id) SELECT id AS account_id, user_id AS user_id FROM accounts
내가 시도 뒤로 이동하려면
는UPDATE
accounts
SET
user_id = ru.user_id
FROM
accounts r, accounts_users ru
ON
r.id = ru.account_id
Update accounts
Set r.user_id = ru.user_id
FROM accounts r, accounts_users ru
WHERE r.id = ru.account_id
SELECT accounts_users.user_id
INTO accounts
FROM accounts_users
INNER JOIN accounts
ON accounts.id = accounts_users.account_id
모든 이들의 어떤 종류의 SQL 오류를 제공합니다. 내 SQL은 모호하기 때문에 그것을 추측하고, 나는 일종의 선택 또는 분 또는 이와 비슷한 것을 필요로한다.
** 명확하게 말하자면, 필자는 여전히 데이터에 1-1 관계가 있음을 확신하지만 기존 테이블의 데이터를 원래 테이블로 되돌리기 위해 sql을 계산할 수는 없습니다. 내가 찾는 것은 accounts_users에서 데이터를 가져와 user_id를 계정 테이블에 넣는 작업 SQL입니다. 감사합니다, 조엘
완벽하게 작동했습니다. 덕분에 1 톤! – Joelio