簡體   English   中英

帶有mysqldump的批處理文件

[英]Batch file with mysqldump

我需要將數據庫備份到.sql文件中。 這是我在做什么:

mysqldump --user=aaa \
          --password=aaa myDb \
          --tables users \
          --where="role_id in(1,3)" > c:\db-backup\users.sql

它給了我all具有role id = 1和3的記錄。是否可以為每個角色ID 1和3只獲得最上面的一行?

您可能會在WHERE子句中以id IN ( SELECT ... )的形式編寫子查詢 (其中id是表的主鍵 )。

我不太確定您對“最上面一行”的含義是什么,但是例如,如果您只需要ID最大的行,則可能會這樣:

mysqldump [...] \
   --where="id IN ( SELECT MAX(id) FROM users WHERE role_id in(1,3) GROUP BY role_id) "

根據您的確切需求,您可能必須找到自己的子查詢,但是我認為這是要走的路。

暫無
暫無

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

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