Mysql
如何轉換格式為 XML 的 select 語句的結果?
當我執行命令時
mysql EvePlanataryExpenses --xml -uuser -p -e "SELECT sTransactionDateTime, SUM(sQuantity * sPrice) as 'profit' FROM sell GROUP BY sMonth;" |sed '/^\s*$/d'
我得到以下輸出
<?xml version="1.0"?> <resultset statement="SELECT sTransactionDateTime, SUM(sQuantity * sPrice) as 'profit' FROM sell GROUP BY sMonth" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <row> <field name="sTransactionDateTime">2016-10-13</field> <field name="profit">1177089967.25</field> </row> </resultset>
是否可以
statement="text"
從根元素中刪除,並將欄位名稱設置為不同於<field name=""></field>
SQL 查詢本身的名稱?我在這裡看到了一些我認為可以使用但無法使其工作的東西。
或者我是否需要通過解析器(Java、PHP 等)執行輸出並獲取它以從根元素中刪除語句並重命名欄位元素?
查詢不知道(或關心)客戶端(本例中為程序)如何格式化其結果
mysql
,所以不,您不能影響查詢本身中的 XML。您正在尋找的是所謂的 XSL 轉換,其中有命令行工具(例如xmlstarlet),您可以通過這些工具管道輸出。