Mysql

如何根據where條件導出mysql數據庫

  • July 26, 2021

我需要導出表的數據和結構,但數據必須具有特定條件(WHERE status=0 和 id>20)。

如何根據 phpMyAdmin 或任何東西的 where 條件導出 mysql 數據庫。

從 mysql 命令行使用 SQL:

SELECT * from YOURTABLE
WHERE status=0 and id>20
INTO OUTFILE 'yourtable.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';

或使用帶有 –where= 選項的 mysqldump:

mysqldump -u youruser -p yourdbname yourtablename --where="status=0 and id>20">yourtable.sql

使用 phpMyAdmin,您可以在 GUI 中執行查詢並點擊結果集下的“導出”。

在我的情況下from table_name .... ,之前INTO OUTFILE給出了一個錯誤(Unexpected ordering of clauses. (near "FROM" at position 10))。

什麼對我有用。

SELECT *
INTO OUTFILE '/Volumes/Development/sql/sql/enabled_contacts.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n' 
FROM table_name
WHERE column_name = 'value'

引用自:https://dba.stackexchange.com/questions/15334