I'm new to SQL and have very basic queries in GCP.
Let's consider this table below:
Name | B | C |
---|---|---|
Arun | 1234-5678 | 1234 |
Tara | 6789 - 7654 | 6789 |
Arun | 4567 | 4324 |
Here, I want to compare column B and C and if they match then give 1 else 0 in column same
and else different
(which we have to create).
So here the catch:
- if column
B
has1234-5678
and columnC
has1234
, then the column should match considering only the number before the "-" in the value.
The output should be :
Name | B | C | same | different |
---|---|---|---|---|
Arun | 1234-5678 | 1234 | 1 | 0 |
Tara | 6789 - 7654 | 6789 | 1 | 0 |
Arun | 4567 | 4324 | 0 | 1 |
Also, I want to count the values of 1 for each values in Name
for same
and different
columns.
So far I've tried this:
SELECT
name,
b,
c ,
if(b = c, 1, 0) as same,
if (b!=c,1,0) as different,
count(same),
count(different)
From Table