我有2个csv文件,如下所示
AllEmpployees.txt
EmpID,Name
QualifiedEmployeees.csv
Empid
现在我想找到合格员工的姓名
Empid,Name
使用以下命令
join -t , -1 1 -2 1 QualifiedEmployeees.csv AllEmployees.txt
这导致零记录。确定有一个雇员的交集。
参考:https://superuser.com/questions/26834/how-to-join-two-csv-files
是因为合格的员工档案只有一列而且没有分隔符吗?或者我做错了什么
答案 0 :(得分:1)
试试这个:
C#
答案 1 :(得分:0)
如果<ScrollView
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent">
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="kyr.com.knowyourrights.DrugLaw"
android:orientation="vertical"
>
<WebView
android:id="@+id/mybrowser1"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</WebView>
</RelativeLayout>
</ScrollView>
不起作用(没有产生尽可能多的行,或根本没有行),很可能是因为您的输入没有排序。从join
我们可以看到:
当使用默认字段分隔符时,应该在中排序要连接的文件 使用-b选项整理排序顺序(1),在它们要连接的字段上,oth- erwise join可能不会报告所有字段匹配。当字段分隔符字符由。指定时 -t选项,整理顺序应与sort(1)相同,不带-b选项。
答案 2 :(得分:0)
join
需要输入文件进行排序,如果输入有DOS行结尾,它可能会给出不准确的结果。
我建议使用此gnu awk
命令来避免任务的两种情况:
awk -F, -v RS='[\r\n]+' 'FNR==NR{quals[$1]; next} $1 in quals' QualifiedEmployeees.csv AllEmployees.txt
000009929745,a
000009929745,c
000009929745,d
000009929745,e
答案 3 :(得分:0)
awk -F, 'FNR==NR{a[$1];next}($1 in a){print $2}' Qualiedemployees.txt allEmployees.txt