0
我想查询BigQuery中分区的总数并将结果存储在mysql表中。我正在为此进行监控。将BQ查询的输出分配给变量
#!/bin/sh
query1="bq query --format=csv 'SELECT COUNT(1) as Count FROM [dataset.tablename] WHERE _PARTITIONTIME = TIMESTAMP(\"$date\")'"
eval result=\$\($query1\)
echo "$result"
bq_insertquery="insert into <<table>>(<<column>>) values(${result})"
echo $bq_insertquery | mysql -u root -p <<dbname>>
在mysql表格中插入时出现错误。这可能是因为变量$ result既包括报头和值,即
变量$结果认为:与头
值貌似更改为MyQuery将能够插入数据,如果我只得到价值。 我应该如何赋值给shell变量,然后使用它?
编辑:任何sql输出包含column_name和值。我分配用于存储来自BigQuery的值的变量也包含两个值,即column_name和value。我正在寻找一些对提取唯一值有帮助的东西。
的可能的复制[如何设置为从输出变量命令在Bash?](https://stackoverflow.com/questions/4651437/how-to-set-a-variable-to-the-output-from-a-command-in-bash) – l0b0
@ I0b0我已更新问题 – Logical
它仍然是重复的。看看链接的问题。只提取值是一个完全独立的问题解决[这里](https://stackoverflow.com/questions/9558867/how-to-fetch-field-from-mysql-query-result-in-bash) – l0b0