首页 MySql BASH – 如何读取文件内容以将结果插入到mysql WHERE子句中

BASH – 如何读取文件内容以将结果插入到mysql WHERE子句中

我正在尝试创建一个文件(称为帐户)并使用bash脚本(称之为* name_checker *)循环遍历每一行并将其转换为多个字符串以存储在名为$NAMES的变量中,用于mysql WHERE IN条款例如:我的脚本* name_checker *中的查询是基本的:SELECT * FROM表WHERE account_name IN(

我正在尝试创建一个文件(称为帐户)并使用bash脚本(称之为* name_checker *)循环遍历每一行并将其转换为多个字符串以存储在名为’$NAMES’的变量中,用于mysql WHERE IN条款

例如:

我的脚本* name_checker *中的查询是基本的:

SELECT * FROM表WHERE account_name IN(‘$NAMES’)

IN语句的值需要用逗号分隔并放入单引号中.

我的帐户文件将是由换行符分隔的名称:

NAME1

NAME2

NAME3

所以我需要我的脚本(* name_checker *)来删除换行符并用单引号括起每个名称并用逗号分隔它们.运行脚本时所需的结果将是

SELECT * FROM表WHERE account_name IN(‘NAME1′,’NAME2′,’NAME3’)

我对此有一些困难,我对使用sed不太熟悉.感谢帮助!

最佳答案
无需调用外部实用程序即可完成.

cat >Accounts.txt <

脚本:

while read x; do NAMES="$NAMES,'$x'"; done 

输出:

SELECT * FROM table WHERE account_name IN ('NAME1','NAME2','NAME3')

或者它甚至可以简化去除显式循环

printf -v NAMES ",'%s'" $(

输出:

'NAME1','NAME3'

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/shujuku/mysql/20201230/14475.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

【免责声明】本站内容转载自互联网,其发布内容言论不代表本站观点,如果其链接、内容的侵犯您的权益,烦请提交相关链接至邮箱xwei067@foxmail.com我们将及时予以处理。

Copygight © 2016-2023 https://www.0532zz.com All Rights Reserved.青岛站长网

站长:xwei067#foxmail.com(请把#换成@)