인터넷을 통해 검색했지만 PHP로 초보자이기 때문에 일부 문제가 해결되었습니다. 레벨 및 포인트별로 게임 서버 캐릭터를 주문하는 스크립트가 있습니다. 레벨 별 주문은 쉬웠습니다.두 번째 테이블에서 결과를 정렬하기 위해 두 번째 PHP SQL 쿼리 추가하기
데이터베이스는 다음과 같습니다 Level
필드가 포함 cDtb
테이블 이름은 Character
입니다.
지금은 Points
필드 다음에 주문할 동일한 스크립트에서 두 번째 쿼리를 사용하고 테이블 이름은 Reward
입니다. 첫 번째 쿼리와 같이 두 번째 쿼리를 추가하려고했지만 결과가 표시되지 않습니다.
최종 결과가 말하는 수준
다음을 값을 감소하고 두 테이블 Character
및 Reward
에서 결과를 사용하여 포인트에서 시작을 기준으로 정렬해야 ... 사용자 이름 Test1을하고 TES2은 동일한 수준 (100)을 가지고 있지만, Test1 파일은 30Points있어 및 Test2 35이 경우 점수는 Test2, Test1이됩니다.
두 번째 쿼리를 추가하는 방법과 점과 레벨로 둘 모두를 주문하는 방법을 알려줄 수 있습니까? 이 도움이
select TOP 15 * from cDtb.dbo.Character order by Level desc, Points desc;
희망 : 사전에
감사합니다, 아래의 스크립트
<tr>
<td><div align="center">Level</div></td>
<td><div align="center">Points</div></td>
</tr>
<tr>
<?
$query=mssql_query("select TOP 15 * from cDtb.dbo.Character order by Level desc");
//---------- second query ??? --------------
while($row=mssql_fetch_assoc($query)){
$levelz=$row['Level'];
$pointz=$row['Points'];
?>
<td style="color: rgb(196, 37, 0); font-weight: bold;">
<div align="center">
<td><?=$levelz;?></td>
<td><?=$pointz;?></td>
</div></td>
</tr>
포인트가 문자 내부 보상이 아닌 다른 테이블 내부에 있기 때문에 작동하지 않습니다. 그래서 그것은 포인트 선택에 의해 cDtb.dbo.Reward 순서에서 TOP 15 *를 선택해야합니다; 하지만이 두 번째 쿼리를 추가하면 포인트로 정렬 된 순위 만 표시되고 레벨은 표시되지 않습니다 – Xander
외래 키를 사용하여이 두 테이블을 함께 연결할 수 있습니까? 당신이 할 수 있다면, 당신은 더블 ORDER BY를 사용할 수있을 것입니다. – Marc
아니요. 제가이 스크립트에서 두 번째 쿼리를 포함해야하는 이유가 무엇인지 알지 못합니다. – Xander