2009-09-04 2 views
0

다른 SQL 문에서 자원의 재사용과 나는 질문이 있습니다 : 내가 쿼리가 :내가 모든 SQL에, MySQL 서버와 예쁜 새를 PHP를 사용하고

$book_copy_user = "SELECT * FROM copy_book " . 
        "JOIN copy_user_own " . 
        "ON copy_book.copy_id = copy_user_own.copy_id " . 
        "WHERE copy_user_own.user_id=1"; 

$res1 =mysql_query($sql1) or die (mysql_error()); 

반환

같은
[{"copy_id":"1","book_id":"1","user_id":"1"}, 
{"copy_id":"2","book_id":"2","user_id":"1"}, 
{"copy_id":"3","book_id":"3","user_id":"1"}, 
{"copy_id":"4","book_id":"4","user_id":"1"}] 

where 절을 사용하여 결과에 대해 3 가지 선택을하고 싶습니다. 그러나 시도 할 때 더 많은 한 개의 열이 있음을 알려줍니다.

내 질문은 : 내가 거기에 선택 결과를 사용하고 그것을 적용 할 수있는 방법이 있습니까? 그렇다면 선택 결과의 필드에 어떻게 관련시킬 수 있습니까?

제공하십시오 코드 샘플

덕분에 모두 당신은 성도 :

답변

0
SELECT * FROM (SELECT * FROM copy_book JOIN copy_user_own ON copy_book.copy_id = copy_user_own.copy_id WHERE copy_user_own.user_id=1) WHERE copy_id = 4 

는 MySQL의에서 작동하는지 잘 모르겠어요 althrough 있습니다.

아니요, 실행 후 선택에서 다른 것을 적용 할 수 없습니다.

1

데이터를 temporary table으로 선택하고 해당 테이블에 대해 더 많은 쿼리를 수행 할 수 있습니다.

CREATE TEMPORARY TABLE temp_table SELECT ... 

그러나 실제 문제를 게시하는 것이 가장 좋을 것이라고 생각합니다. 훨씬 더 좋은 해결책이있을 가능성이 큽니다.

관련 문제