이글은 이번 워게임에서 쓰이는 sql 용어를 설명하는 글입니다. 추후 계속 추가할 예정입니다.
mysql_query
select id from a where id='guest' or no=1
no값이 1이거나 id가 guest인 것을 id항목에서 찾으라는 뜻이 됩니다.
mysql_fetch_array
mysql_query 를 통해 얻은 리절트 셋(result set)에서 레코드를 1개씩 리턴해주는 함수입니다.
즉 쉽게 말하면 mysql_query 의 실행결과를 한 행씩 가져온다는 뜻입니다. 예를 한번 들어 봅시다.
$q=mysql_fetch_array(mysql_query("select id from a where id='guest' and no=1"));
자 위의 mysql_query를 보시면 id가 guest이고 no값이 1인 id를 검색하라고 되어있습니다. 그리고 mysql query를 통해 얻은 그 id를 mysql fetch array에 의해 한 행씩 가져옵니다. 자 그렇다면 테이블로 확인을 해 봅시다.
a라는 테이블이 다음과 같다고 봅시다.
no id
1 guest
2 admin
id가 guest이고 no값이 1인 id를 검색한다 했으니 실행결과는 guest가 나옵니다.
여기서 추가로 설명을 더 드리자면
.$q=mysql_fetch_array(mysql_query("select id from a where id='guest' or no=2"));
인 경우에는 어떻게 될까요?
id가 guest인 id 또는 no값이 2인 id를 둘다 불러오게 됩니다. 물론
mysql_fetch_array에 의해 한 행씩 들고 옵니다.
그러면 guest와 admin이 둘다 불러오게 됩니다.
여기서 guest를 출력시키고 싶다면 echo($q[0]) 라고 해주셔야하고
admin을 출력시키고 싶다면 echo($q[1])이라고 해주셔야 합니다.