한 번에 여러 행을 삽입하면 데이터베이스 쿼리가 더 빠릅니까?
처럼
INSERT....
UNION
INSERT....
UNION
(2-3000 행과 같이 삽입해야합니다)
답변
INSERT
구문을 사용하는 문은VALUES
여러 행을 삽입 할 수 있습니다. 이렇게하려면 각각 괄호로 묶고 쉼표로 구분 된 여러 열 값 목록을 포함하십시오.
예:
INSERT INTO tbl_name
(a,b,c)
VALUES
(1,2,3),
(4,5,6),
(7,8,9);
답변
텍스트 파일에 데이터가있는 경우 LOAD DATA INFILE을 사용할 수 있습니다 .
텍스트 파일에서 테이블을로드 할 때 LOAD DATA INFILE을 사용하십시오. 일반적으로 INSERT 문을 사용하는 것보다 20 배 빠릅니다.
위의 링크에서 삽입 문의 속도를 높이는 방법에 대한 추가 정보를 찾을 수 있습니다.
답변
BEGIN;
INSERT INTO test_b (price_sum)
SELECT price
FROM test_a;
INSERT INTO test_c (price_summ)
SELECT price
FROM test_a;
COMMIT;
답변
다음은 : 🙁 다 대다 관계) 테이블과 함께 사용할 수있는 PHP 솔루션입니다.
// get data
$table_1 = get_table_1_rows();
$table_2_fk_id = 123;
// prepare first part of the query (before values)
$query = "INSERT INTO `table` (
`table_1_fk_id`,
`table_2_fk_id`,
`insert_date`
) VALUES ";
//loop the table 1 to get all foreign keys and put it in array
foreach($table_1 as $row) {
$query_values[] = "(".$row["table_1_pk_id"].", $table_2_fk_id, NOW())";
}
// Implode the query values array with a coma and execute the query.
$db->query($query . implode(',',$query_values));
답변
// db table name / blog_post / menu / site_title
// Insert into Table (column names separated with comma)
$sql = "INSERT INTO product_cate (site_title, sub_title)
VALUES ('$site_title', '$sub_title')";
// db table name / blog_post / menu / site_title
// Insert into Table (column names separated with comma)
$sql = "INSERT INTO menu (menu_title, sub_menu)
VALUES ('$menu_title', '$sub_menu', )";
// db table name / blog_post / menu / site_title
// Insert into Table (column names separated with comma)
$sql = "INSERT INTO blog_post (post_title, post_des, post_img)
VALUES ('$post_title ', '$post_des', '$post_img')";