0
我從命令行運行一些SQL查詢如下:空結果打印MySQL的列名設置
cat my_query.sql | mysql --defaults-file=my_conf.cnf
我需要打印的列名查詢是否返回任何數據或沒有。 當前沒有要返回的數據時,即查詢返回空結果集時,此命令不會打印任何內容。
例如我的查詢是:
-- id=-1 doesn't exist
SELECT col1, col2 FROM table WHERE id=-1
我需要這個查詢返回
col1 col2
相反,它沒有返回。 使用純粹的mysql和標準的unix命令可以做到這一點嗎?
謝謝。
您可以將預期的查詢和UNION ALL作爲模擬其後的空行的「虛擬」SELECT。 UNION結果使用UNION的第一個查詢的數據類型和列名稱。 – Uueerdo
我想你建議添加一個像SELECT一樣的虛擬SELECT'',''。 它會工作,但它會在結果的末尾添加一個新行和幾個製表符。這不是最乾淨的解決方案,但它可能工作。 我正在尋找一個mysql命令選項來做到這一點,但可能沒有。謝謝。 – burhan
是的,這不是理想的解決方案,但如果你總是這樣做,那麼你總是忽略最後一行,或者你可以給你的假選擇一些明顯的「標誌」值,比如''[cmdlinedummy]''作爲字符串。 – Uueerdo