Since the order of Column2 can be random, you can do something like:
awk -F'\t' '
NR>1 {
split($2,ary,/[;=]/);
for (i=1;i<=length(ary);i++) {
if (ary[i]=="b" && ary[i+1]>1) {
print $0
}
}
next
}1' file
Test:
$ cat f
col1 col2
1 a=2;b=1.1;c=0
1 a=0.2;b=0.2;c=0.5
1 a=1.5;b=1.9;c=3.5
$ awk -F'\t' '
NR>1 {
split($2,ary,/[;=]/);
for (i=1;i<=length(ary);i++) {
if (ary[i]=="b" && ary[i+1]>1) {
print $0
}
}
next
}1' f
col1 col2
1 a=2;b=1.1;c=0
1 a=1.5;b=1.9;c=3.5