awk: assign variable with -v didn't work in awk filter

I want to filter 2nd column = 2 using awk

 
$ cat t 
1 2
2 4
$ VAR=2

#variable worked in print

$ cat t | awk -v ID=$VAR  ' { print ID}'
2
2

# but variable didn't work in awk filter

$ cat t | awk -v ID=$VAR  '$2~/ID/  { print $0}'

Try:

cat t | awk -v ID=$VAR  '$2~ ID  { print $0}' 
$ id=2
$ awk -v ID=$id '{print $(ID)}' file