2014-12-08 4 views
-1

meta_id가 meta_data 열의 데이터에 해당하는 값을 포함하는 데이터베이스 테이블이 있습니다. 하지만 지금은 그 데이터를 부트 스트랩 테이블에 표시하려고합니다.MYSQL 열 값이 같은 열의 다른 값과 일치하는 곳을 선택하십시오.

나는

enter image description here

내가 같이하는 결과를 싶습니다 PHP를 myadmin에과 같이 테이블이 있습니다 가

나는 현재이 쿼리는하지만, 메신저를 작성했습니다

enter image description here 이것을 가장 잘하는 방법에 대해 혼란스러워합니다.

나는 존재하는 행을 계산하고 나서 테이블 헤더 수에 의해 나눈 다음 테이블 열 루프를 가져와야하지만 그 테이블 열을 삽입 할 수 있다고 생각했지만 여전히 필요 이상의 열을 생성합니다.

이 일을한다
<?php  


$sql="SELECT * FROM table WHERE pid=".$this->item->id." ORDER BY meta_data ASC"; 
$db->setQuery($sql); 
$db->query(); 

$count=$db->getNumRows(); 

$meta= $db->loadObjectlist(); 

foreach($meta as $data){ 
$metadata .= '<td>'.$data->meta_data.'</td>'; 
} 

$count = $count/2; // i know there will be only two th's 

?> 

<table class="table table-striped"> 

<thead><tr><th>Item</th><th>Price</th></tr></thead> 

<tbody> 

<?php for ($x = 1; $x <= $count; $x++) { ?> 

<tr><?php echo $metadata; ?></tr> 

<?php } ?> 

</tbody> 

</table> 

:

enter image description here

임 점점 가까이! 위의

<?php 

$sql=" 

SELECT * FROM table WHERE pid=".$this->item->id." 

AND 

meta_id IN (SELECT meta_id FROM table GROUP BY meta_id HAVING COUNT(*) > 1) 

"; 

$db->setQuery($sql); 
$meta= $db->loadObjectlist(); 
foreach($meta as $data){ 
$metadata .= '<tr><td>'.$data->meta_data.'</td></tr>'; 
} 

?> 

<table class="table table-striped"> 

<thead><tr><th>Item</th><th>Price</th></tr></thead> 

<tbody> 

<?php echo $metadata; ?> 

</tbody> 

</table> 

지금 나에게주고이 :

enter image description here

예를 들어
+0

당신은 메타 ID가 다음이 같은 행의 meta_data 걸릴 것 같은 있는지 확인해야합니다, 당신은 같은 루프에 일부 변경을 할 수 있습니다. – Lakhan

+0

@Lakhan 감사합니다. 그렇습니다. 당신은 완전히 옳습니다. 그러나 어떻게? 나는 아주 가까이에있다. 나는 여기에 또 다른 질문을 발견하고 mysql 쿼리를 시도하고 가까워지고있다. 이제 테이블 행의 형식을 지정하는 방법을 알아야합니다. 왜냐하면 나는 그 쿼리가 효과가 있다고 생각하기 때문이다. – jonnypixel

+0

비슷한 방법으로 시도해보십시오. $ new_array = $ data}}} 이것을 사용하십시오. 귀하의 배열을 필터링하는 개념의 유형. 그 후 원하는대로 최종 new_array를 실행합니다. – Lakhan

답변

1
$sql="SELECT "put here column name you want to display in html table " 
FROM table WHERE pid=".$this->item->id." ORDER BY meta_data ASC"; 

: 당신이 열 이름 (들)

$sql="SELECT Item,price FROM table WHERE pid=".$this->item->id." 
ORDER BY meta_data ASC"; 
같은 쿼리보기보다는 항목 & 가격이있는 경우

상품 만 받으실 수 있습니다 & 가격 fr 옴 데이터베이스.

또 다른 방법은

foreach($meta as $data){ 
$metadata .= '<td>'.$data->meta_data['Item'].'</td> 
<td>'.$data->meta_data['Item'].'<td>'; 
} 
+0

@ShaliendraSharma thankyou 나는 이것을 지금 시험 할 것이다 – jonnypixel

+0

오 .. 나는 내 테이블에 아이템과 가격이 없다. – jonnypixel

+1

Phpmyadmin에는 데이터가있는 열만이 들어있다. 화면 상단의 – jonnypixel

관련 문제