2014-11-28 2 views
0

하나의 테이블에서 데이터를 선택하고 PHP를 사용하여 기존 테이블에 삽입하려고합니다.하나의 테이블에서 데이터를 선택하여 PHP를 사용하여 기존 테이블에 삽입합니다.

나는 배열에 결과를 수집 한 다음 올바른 테이블에 다시 주입 할 수 있음을 알고 있지만 이것은 비효율적으로 보입니다. 내가 선택한 테이블에 요청한 쿼리를 복사 할 수 있어야합니다.

모든 의견을 보내 주시면 감사하겠습니다. 아래는 배열에 데이터를 저장하는 방법입니다.

<?php 
header("Cache-Control: no-cache"); 
date_default_timezone_set('Europe/London'); 

// open DB connection 
require_once("DbConnect.php"); 

// fetch playlist 
$result = $db->query(
    "SELECT `artist`, `title`, `label`, `albumyear`, `date_played`, `duration`, `picture` " 
    ."FROM historylist ORDER BY `date_played` DESC LIMIT 5 "); 

// put into array 
while ($row=$result->fetch_object()) $list[] = $row; 



?> 
+5

는 http://stackoverflow.com/questions/5391344/insert-with-select를 참조 – tkausl

답변

1

@tkausl에 따르면 동일한 데이터베이스로 작업하는 경우 동일한 쿼리로 결과를 원하는 테이블에 삽입 할 수 있습니다.

<?php 
header("Cache-Control: no-cache"); 
date_default_timezone_set('Europe/London'); 

// open DB connection 
require_once("DbConnect.php"); 

// fetch playlist 
$result = $db->query(
    "INSERT INTO my_table(`artist`, `title`, `label`, `albumyear`, `date_played`, `duration`, `picture`)" . 
    "SELECT `artist`, `title`, `label`, `albumyear`, `date_played`, `duration`, `picture` " . 
    "FROM historylist ORDER BY `date_played` DESC LIMIT 5 "); 
+0

그것은 바뀌 문제의 단지 일부가 아닌 전체를 게시하는 것이 좋습니다. – tadman

+0

@byoigres Blimey, 매뉴얼을 읽어야합니다. 내가 그것을 삽입하기 전에 그것을 말하기 전에 데이터를 선택하려고했습니다 .. 많은 감사합니다! – Justin

관련 문제