sql >> Databáze >  >> RDS >> Mysql

Problém s návratovou proměnnou v bash

Jednodušší způsob je:

var=$(mysql -h abcdcef.com --port=3306 --user=root --password=hbbfe --batch --skip-column-names -Dshop -e "select count(*) from shop_tab where catalog <> ''")

Kromě toho předběžím použití funkce, abych snadno přidal možnosti do příkazu MySQL, aniž byste museli upravovat celý váš skript.

function MysqlQuery() {
    mysql -h abcdcef.com --port=3306 --user=root --password=hbbfe --batch --skip-column-names -D "$1" -e "$2";
}

va=$(MysqlQuery Shop "SELECT COUNT(*) FROM shop_tab WHERE catalog <> ''")
vaABC=$(MysqlQuery Shop "SELECT COUNT(*) FROM shop_tab WHERE catalog <> 'abc'")
vadef=$(MysqlQuery Shop "SELECT COUNT(*) FROM shop_tab WHERE catalog <> 'def'")
# ...

Také mi to přijde čtivější...



  1. Pokud není zadáno „Pořadí podle“, jaké pořadí vybere dotaz pro vaši sadu záznamů?

  2. Nemohu získat svůj přihlašovací formulář pro správné připojení k databázi mySQL

  3. SQL Server 2016:Obnovení databáze

  4. Chyba vkládání MySQL:ER_BAD_FIELD_ERROR:Neznámý sloupec '2525' v 'seznamu polí'