簡體   English   中英

一個查詢表名稱的結果,另一個查詢表名稱的結果,並導致多個csv輸出文件

[英]result of one query table name of another and results in multiple csv outfiles

我試圖更快地完成一項任務,但遇到了兩個問題(希望可以包含在一個問題中,因為這兩個問題都會出現在一個查詢中)。

我想將一個SQL查詢(它是多個ID)的結果用作另一個查詢(FROM ...?)的表名。

然后,應將最終結果(用於每個表)寫入多個.csv輸出文件,而不是我目前使用的文件。

我已經准備好兩個查詢,但是我認為這對這個問題並不重要,這就是為什么我跳過發布任何內容。

您可以在最簡單的SELECT查詢中給我示例。

您可以使用服務器端准備好的語句:

https://dev.mysql.com/doc/refman/5.7/zh-CN/sql-syntax-prepared-statements.html

這是一個希望對您有所幫助的示例:

select @q:=concat("select count(*) from ", tbl_name) 
from my_db.my_tables where table_id = 3;
prepare s from @q;
execute s;

導致根據table_id等於3的my_db.my_tablestbl_name的值執行select count(*) from

要將結果導出為CSV,您可以執行以下操作:

select @q:=concat("select count(*) from ", tbl_name, 
" into outfile '/tmp/data.csv' fields terminated by ','") 
from my_db.my_tables where table_id = 3;

要了解有關SELECT ... INTO OUTFILE更多信息:

https://dev.mysql.com/doc/refman/5.7/zh-CN/select-into.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM