溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在shell中處理mysql查詢結果

發(fā)布時間:2021-05-18 16:26:26 來源:億速云 閱讀:742 作者:Leah 欄目:開發(fā)技術

這篇文章給大家介紹怎么在shell中處理mysql查詢結果,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

首先理清要了解shell腳本的數(shù)組與字符串的一些特性:

str=("hello" "world" "!") #結果: str: 3 #普通的字符串數(shù)組
echo "str: " ${#str[@]}
str1=("hello world !") #結果: str1: 1 #普通的字符串數(shù)組
echo "str1: "${#str1[@]}
str2=(`echo "Hello world !"`) #結果: str2: 3 #等價于 str
echo "str2: " ${#str2[@]} 


function strDeal(){
  param=("$@")
  echo ${param[@]}
  echo $1
  echo $2
  echo $3
}
echo "-----------first----------------"
strDeal "Hello world !" 
echo "-----------second----------------"
strDeal "Hello" "world" "!"
echo "-----------third----------------"
strDeal $str1  #等價于second

用mysql自帶數(shù)據(jù)庫world.city為例來展示處理查詢結果

#!/bin/sh
#filename:demo.sh
cityRes=""
cityColNum=5
function getCurValue(){
  curValue=""
  colIndex=$1
  rowIndex=$2
  idx=$[$cityColNum*$colIndex+$rowIndex-1]  #通過行列進行計算目標位置
  if [ $idx -le ${#cityRes[@]} ] ;then
    echo ${cityRes[$idx]} #獲取目標結果
  fi
}

#獲取city表總行數(shù)
function getCityRowNum(){
  echo $[${#cityRes[@]}/$cityColNum-1]
}


cityRes=(`mysql -uroot -p123456 world -e "select * from city"`)  #查詢結果以數(shù)組來保存,等價于上面的str2
curValue=`getCurValue $1 $2`  #$1為行數(shù) $2為列數(shù)
echo $curValue
rowNum=`getCityRowNum` #獲取總行數(shù)
echo $rowNum

調(diào)用示例

sh demo.sh 1 2

注意的事項

getCityRowNum后的記錄數(shù)與實際的記錄數(shù)并不一致,這是由于city表Name 或者District字段中由于多個字符串組成,如:Andorra la Vella

關于怎么在shell中處理mysql查詢結果就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI