1
AS 얻기 위해 UNION을 사용하여 WHERE, 1 AS의 ColumnName,의 ColumnName AS 2 자리에 대한이MySQL의 모든 열은 1
IdRows | UpperLevelIdRows | CategoriesName |
-------------------------------------------------
2 | 0 | Transport
4 | 2 | Cars
12 | 4 | Alfa Romeo
쿼리
SELECT IdRows AS IdRows1, CategoriesName AS CategoriesName1 FROM categories
WHERE UpperLevelIdRows = ?
UNION
SELECT IdRows AS IdRows2, CategoriesName AS CategoriesName2 FROM categories
WHERE UpperLevelIdRows = ?
데이터와 같은 테이블
Array
(
[0] => 2
[1] => 4
)
입니다 되세요
so
SELECT IdRows AS IdRows1 .... WHERE UpperLevelIdRows = 2
및 결과
SELECT IdRows AS IdRows2 .... WHERE UpperLevelIdRows = 4
는
[0] => Array
(
[IdRows1] => 4
[CategoriesName1] => Cars
)
[1] => Array
(
[IdRows2] => 12
[CategoriesName2] => Alfa Romeo
)
같은 배열을 얻을하지만 난이 exe 인 경우 IdRows1
볼이
[0] => Array
(
[IdRows1] => 4
[CategoriesName1] => Cars
)
[1] => Array
(
[IdRows1] => 12
[CategoriesName1] => Alfa Romeo
)
대신 IdRows2
의 같은 배열을 얻을 것으로 예상 귀엽게 만 두 번째 SELECT IdRows AS IdRows2 ...
, 다음을 참조하십시오. [CategoriesName2] => Alfa Romeo
내 실수는 어디에서 볼 수 있습니까? 무엇을 바로 잡아야합니까?
데이터에서 선택/옵션 상자를 만들고 싶습니다. 마찬가지로
첫 번째 선택 상자
echo '<select name="upper_level_id0" id="upper_level_id0" >
<option value="'.$IdRows1.'">'.$CategoriesName1.'</option>
</select>';
두 번째 선택 상자 트랜잭션을 사용하는 순간 발견 솔루션에서
echo '<select name="upper_level_id1" id="upper_level_id1" >
<option value="'.$IdRows2.'">'.$CategoriesName2.'</option>
</select>';
. 모든 SELECT ...
$db->beginTransaction();
foreach ($sql_get_id_name as $k_sql => $val_sql) {
$stmt_get_id_name = $db->prepare($val_sql);
$stmt_get_id_name->execute(array($data_get_id_name[$k_sql]));
$id_name[] = $stmt_get_id_name->fetchAll(PDO::FETCH_ASSOC);
}
$roll_back = $db->rollBack();
정확히 무엇을 원하니? 이것은 나무 구조입니까? 귀하의 질문을 이해하지 못했습니다. – Augusto
수정 된 텍스트입니다. 내가 원하는 것과 내가 얻은 것을 썼습니다. – user2118559
공용체를 사용할 때 첫 번째 선택에서 이름을 사용하여 가져옵니다. 어떤 데이터를 추출하고 어떻게 사용할 계획입니까? 데이터베이스에서 나무 같은 구조를 추출하는 더 좋은 방법이 있습니다 – Augusto