簡體   English   中英

MySQL Group By Loop Bash

[英]MySQL group by loop bash

我在使用MySQL時遇到問題; 它會拉取額外的數據。 我有一個包含IP和主機的數據庫:

ips         host
127.0.0.1  host1.exampl.com
127.0.0.2  host2.exampl.com
127.0.0.3  host3.exampl.com
127.0.0.4  host4.exampl.com
127.0.0.5  host5.exampl.com

接下來,我有一個文件ips.txt

127.0.0.2
127.0.0.4

我有一個bash腳本:

for i in `cat ips.txt` ; do echo "ip, host from ip_group_list where ip like '%$i%' GROUP BY ip" | mysql -uroot -p$PSSWD  database -N  >> ipsandhost.txt; done

我要它回來

127.0.0.2  host2.exampl.com
127.0.0.4  host4.exampl.com

但是它返回

127.0.0.1  host1.exampl.com
127.0.0.2  host2.exampl.com
127.0.0.3  host3.exampl.com
127.0.0.4  host4.exampl.com
127.0.0.5  host5.exampl.com

有什么建議么?

您實際上不需要%%或GROUP BY

for i in `cat ips.txt` ; do 
  echo "SELECT ip, host from ip_group_list where ip = '$i'" | mysql -uroot -p$PSSWD  database -N  >> ipsandhost.txt; 
done

暫無
暫無

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

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