PHP SQL 질문입니다
본문
1반 2반 3반
김철수 박철수 박철수
홍길동 박길동 김민희
김민희 박민희 김철수
김철수 박철수 김민희
결과: 김철수 홍길동 김민희 박철수 박길동 박민희
위와 같이 3개의반(필드)에서 중복되는 동명이인을 제외 후 나열하려합니다.
아래는 제가 간단하게 1개의 필드만 했는데 3개의 반을 합치고 중복제외를 어찌해야할지ㅠㅠ
도움 또는 조언 부탁드려요..
<?php
$sql_admin_custom = "SELECT * FROM g5_write_class GROUP BY 1반";
$res_admin_custom = sql_query($sql_admin_custom);
$arr = array();
for ($i=0; $row=sql_fetch_array($res_admin_custom); $i++) {
echo $row['1반'].'';
}
?>
답변 3
<?php
$sql_admin_custom = "SELECT * FROM g5_write_class GROUP BY 1반";
$res_admin_custom = sql_query($sql_admin_custom);
$arr = array();
for ($i=0; $row=sql_fetch_array($res_admin_custom); $i++) {
echo $row['1반'].'';
}
?>
맞는지 모르겠네요;;
SELECT * FROM (
SELECT 1반 AS AA FROM g5_write_class
UNION ALL
SELECT 2반 AS AA FROM g5_write_class
UNION ALL
SELECT 3반 AS AA FROM g5_write_class
) GROUP BY AA
<?php // 각 반의 데이터를 배열로 정의
$class1 = ["김철수", "홍길동", "김민희", "김철수"];
$class2 = ["박철수", "박길동", "박민희", "박철수"];
$class3 = ["박철수", "김민희", "김철수"];
// 세 반의 배열을 합침
$all_classes = array_merge($class1, $class2, $class3);
// 중복을 제거
$unique_names = array_unique($all_classes);
// 결과를 정렬 (선택 사항)
sort($unique_names);
// 결과 출력
echo implode(" ", $unique_names);
?>
chatGPT에 질문 고대로 넣어서 물어봤더니 가르쳐준 답변입니다.