instead of ON clause we can declare our condition in where clause in join ?
ON is used while JOINING the table, On is not filter it is method of joining table with another table there is filter in join that is HAVING clause which can be compared with WHERE clause. Ideally ON is much faster because on prevents result to became Cartesian products of the Two table. if you ignore ON the table become Cartesian product of each other ie N*M type.and then where clause will apply.
Both are having different meaning. if you are using condition after ON data will be get filtered in the table level. otherwise it will be a cross join and data will be get filtered in the where clause
You can but thats not ANSI standard
on must have= sign only while where can have all the operators
where is sarg (search argument) so here we put general conditions. we must use ON only for joins