SQLデータを含む2つのファイルがあり、コースコードと学生番号が一致する2番目のファイルのデータを削除したいと思います。ファイルは次のようになっています。
ファイル1:
INSERT INTO RegisteredCourses (course,student) VALUES ('BKE974','3941021693');
INSERT INTO RegisteredCourses (course,student) VALUES ('BKE974','5044463260');
INSERT INTO RegisteredCourses (course,student) VALUES ('BKE974','5923001715');
INSERT INTO RegisteredCourses (course,student) VALUES ('DQY359','7539643746');
INSERT INTO RegisteredCourses (course,student) VALUES ('DQY359','9604636424');
INSERT INTO RegisteredCourses (course,student) VALUES ('DQY359','9649249670');
ファイル2:
INSERT INTO Queue (course,student,registrationDate) VALUES ('BKE974','3941021693','1354811709');
INSERT INTO Queue (course,student,registrationDate) VALUES ('BKE974','5044463260','1378352712');
INSERT INTO Queue (course,student,registrationDate) VALUES ('BKE974','3421728825','1368144500');
INSERT INTO Queue (course,student,registrationDate) VALUES ('DQY359','7421758823','1375874278');
INSERT INTO Queue (course,student,registrationDate) VALUES ('DQY359','9604636424','1374587707');
INSERT INTO Queue (course,student,registrationDate) VALUES ('DQY359','9649249670','1370542279');
ファイルを操作して、ファイルの最初の2行と最後の2行でコースフィールドと学生フィールドが一致するようにしました。最初の行では、同じコース(BKE974)と学生(3941021693)の値を持っていることがわかります。これらの値が一致しない場合は、File2から新しいファイルにその行全体を印刷したいと思います。
私はこれを理解するためにいくつかのbashスクリプトを使用しようとしてきましたが、bashについてもっと学ぼうとしているので、bashソリューションが大好きです。これを解決するためにgrep、awk、cutを使用してみましたが、bashに関する知識が非常に不足しています:P
編集:したがって、最終的には、次の2つの行が新しいファイルに出力されるはずです。
INSERT INTO Queue (course,student,registrationDate) VALUES ('BKE974','3421728825','1368144500');
INSERT INTO Queue (course,student,registrationDate) VALUES ('DQY359','7421758823','1375874278');