Cara Meng-Compare Data antara 2 Tabel di MySQL?

Menjaring.com – Saya punya tabel, tabel1 = data records, tabrl2 = data duplicates. Keduanya berisi kolom yang sama percis dengan pengecualian pada tabel2, memiliki tambahan kolom “ID” dan keduanya memuliki kolom “user_id”. Jadi data yang ada di tabel1 akan dimasukan ke tabel2.

Yang menjadi pertanyaan saya adalah, Bagaimana cara meng-compare data dari kedua tabel tersebut agar bisa di “flag” mana saja yang sama dan mana yang berbeda

Contoh :

table 1 berisi row:

user_id | user_name
——————-
2342342 | some name

dan table 2:

user_id | user_name
——————-
2342342 | different name

then the output would be:

—————————————–
|2342342 | *flag* different name *flag* |
—————————————–

Jawabanya:

Query berikut ini akan mengambil semua data dari tabel 2, dan jika “name” berbeda
dengan yang ada di tabel 1, is_defferent akan jadi “1″, jika tidak akan jadi “0″:

SELECT
table2.user_name,
IF(table2.user_name != table1.user_name, 1, 0) AS is_different
FROM
table2
LEFT JOIN
table1
ON
table1.user_id = table2.user_id

EDIT

Anda dapat melekukan beberapa kondisi dalam satu query,
jika anda membutuhkan lebih dari 1 kolom :

SELECT
table2.user_name,
table2.user_email,
IF(table2.user_name != table1.user_name, 1, 0) AS is_name_different,
IF(table2.user_email != table1.user_email, 1, 0) AS is_email_different
FROM
....
....

p5rn7vb

About the Author

yadi rosadi

No Comments

Comments are closed.