当前位置:网站首页>Awk implements SQL like join operation
Awk implements SQL like join operation
2020-11-07 18:55:00 【Irving the procedural ape】
awk、grep and sed go by the name of linux Three swordsmen , in fact grep and awk I also use it in my daily work (sed Use less ), Maybe some people are right about awk Less understanding , Let me give you a general introduction to . Many people think awk It's just a text processing tool , In fact, they use it the same way . But it's actually a language , Have mathematical operators 、 Process control statements , It even encapsulates many built-in variables and functions for text processing , This makes it powerful in text processing . If grep Can only do data filtering , that awk It can also process data 、 Analyze and even generate reports , After all, it's a complete programming language .
Because this article is not awk Getting started with , If you want to get started, I recommend Ruan Yifeng awk Introductory tutorial and Left ear mouse AWK A concise tutorial .
Back to my topic today , Today I'd like to show you something I use a lot awk Scene . Because we do back-end development , Often when doing data analysis, there will be such a problem ,1. Facing hundreds of thousands of data , We need to screen out hundreds and thousands of specific key The data of .2. For these millions of data , Directed against id Fields complement other fields .
There may be mastery of excel My classmates jumped out and said “ Is this ,so easy,vlookup That's it !” , in fact ,excel It does solve the problem , But it's a little heavy , Even sometimes we can't use it on the server excel. What other ways ? For the two scenes I'm talking about , Actually, think about it , Is it right? sql Two watches in Chinese join Can solve the problem . In fact, you don't really need to put files in the database , Only need to use awk One order can solve .
example
Let's take the question like , Suppose there are two files ,score.txt Save the student number + Performance data , Another one name.txt Save the student number + Name data , Now you want to know how many points everyone has baked .
score.txt
id score 1 872 673 684 755 906 1007 0
name.txt
id name 1 Zhang San 2 Li Si 3 Wang Wu 4 Zhao er 5 Lennon 6 Big bear
You want a copy with a student number Name and grade data , It looks like this .
id score name 1 87 Zhang San 2 67 Li Si 3 68 Wang Wu 4 75 Zhao er 5 90 Lennon 6 100 Big bear 7 0
use awk How easy it is to generate such data ? Just one line of code , You can save name.txt and score.txt, And then execute the following command to try .
awk 'ARGV[1]==FILENAME {map[$1]=$2} ARGV[2]==FILENAME {print $0, map[$1]}' name.........
版权声明
本文为[Irving the procedural ape]所创,转载请带上原文链接,感谢
边栏推荐
- cubemx做stm32 USB开发
- Blazor 準備好為企業服務了嗎?
- Application layer software development Godfather teaches you how to refactor, senior programmers must professional skills
- DOM节点操作
- 嘉宾介绍|2020 PostgreSQL亚洲大会中文分论坛:潘娟
- Two dimensional code location and alarm system of Expressway
- Developing STM32 USB with cubemx
- Exclusive interview with Yue Caibo
- 快進來!花幾分鐘看一下 ReentrantReadWriteLock 的原理!
- Using rabbitmq to implement distributed transaction
猜你喜欢
python3操作gitlab
如何利用PopupWindow实现弹出菜单并解决焦点获取以及与软键盘冲突问题
7. Swarm builds clusters
【笔记】Error while loading PyV8 binary: exit code 1解决方法
Getting started with varhart xgantt
Using JSON webtoken (JWT) to generate token in nodejs
关于DevOps的七大误解,99%的人都曾中过招!
Test the necessary skill points of siege lion! This article takes you to interpret the testing technology under Devops
The JS solution cannot be executed after Ajax loads HTML
想要忘记以前连接到Mac的WiFi网络,试试这个方法!
随机推荐
使用“1”个参数调用“DownloadString”时发生异常:“操作超时”
Git submission specification
Three steps to understand Kerberos Protocol easily
廬山真面目之二微服務架構NGINX版本實現
ImageMagick - add watermark
VARCHART XGantt入门教程
REM: the solution of PC and mobile
Idea activation to 2089 failure
Jenkins入门(二)声明式流水线Jenkins Pipeline
Top 5 Chinese cloud manufacturers in 2018: Alibaba cloud, Tencent cloud, AWS, telecom, Unicom
The official 1909 version of win10 cannot open the real-time protection solution of virus and threat protection in windows security center.
关于DevOps的七大误解,99%的人都曾中过招!
2018中国云厂商TOP5:阿里云、腾讯云、AWS、电信、联通 ...
条形码识别器Dynamsoft Barcode Reader v7.5全新上线!
谈了多年的数字化转型,为什么还有很多企业依然“口头管理”
.NETCore3.1+Vue.js打造的低代码工作流引擎
HMS Core推送服务,助力电商App开展精细化运营
Application layer software development Godfather teaches you how to refactor, senior programmers must professional skills
The advantages and functions of psychological counseling app
How does varhart xgantt represent working days on a calendar