1
Joomla 사용자와 사용자 프로필 데이터를 Excel 테이블로 다운로드해야합니다. SQL 쿼리를 입력해야하는 Joomla 구성 요소 "VJ SQL to File"을 사용하고 있습니다. 이제 문제가 시작됩니다. 나는 다음 쿼리 입력 :정확하게 joomla 사용자와 사용자 프로필을 덤프하는 방법
select
vpa1_user_profiles.user_id,
vpa1_user_profiles.profile_key,
vpa1_user_profiles.profile_value,
vpa1_users.name,
vpa1_users.username,
vpa1_users.email
from
vpa1_users
inner join vpa1_user_profiles
on
vpa1_users.id = vpa1_user_profiles.user_id
그리고 그 결과는 다음과 같이 표시됩니다 :
user_id profile_key profile_value name username email
4256 profile.dob "1999-12-31 23:00:00" Test Testuser1234 abcdefg.hi
4256 profile.modnr "09080706" Test Testuser1234 abcdefg.hi
4256 profile.nr "22" Test Testuser1234 abcdefg.hi
4256 profile.ort "Pfefferland" Test Testuser1234 abcdefg.hi
4256 profile.plz "9876" Test Testuser1234 abcdefg.hi
4256 profile.str "Landstr." Test Testuser1234 abcdefg.hi
4256 profile.telnr "01020304" Test Testuser1234 abcdefg.hi
4256 profile.username "Test" Test Testuser1234 abcdefg.hi
4256 profile.uservor "User" Test Testuser1234 abcdefg.hi
3 오른쪽 끝의 열
는 vpa1_users 테이블에서이며 3 왼쪽 끝의 열은 vpa1_user_profiles 테이블에서입니다 . 하지만 필요한 것은 각 행마다 하나의 레코드가있는 Excel 테이블입니다.이 문제를 해결하는 방법에 대한 조언이 있거나 누군가 Excel 파일에서 덤프를 얻는 방법에 대해 더 좋은 아이디어가 있다면 알려주십시오. 내가 그 문제를 해결하는 가장 좋은 방법이라고 생각
SELECT user_profiles.user_id, users.name, users.username, users.email, user_profiles.profile_values
FROM x2iu9_users AS users
LEFT JOIN (
SELECT user_id, GROUP_CONCAT(profile_value
SEPARATOR ',') profile_values
FROM x2iu9_user_profiles
GROUP BY user_id
) AS user_profiles ON users.id = user_profiles.user_id
: 당신은 MySQL 데이터베이스에서이 작업을 실행하는 경우
감사합니다. 문제는 Excel 파일이 각 셀마다 하나의 값만 가져야한다는 것입니다. 프로필 _value에 제안 된 솔루션의 문자열이 포함되어 있습니다. – kraadde