It's a subtle point, it has to do with how sqrt(x) is defined. The equation
x^2 = 9
and
x = sqrt(9)
are NOT saying the same thing. The first equation has two solutions +3 and -3, the second has only one: +3. The reason is that sqrt(x) is a function, and functions (by definition) can only be one-to-one or many-to-one, never one-to-many or many-to-many. Therefore, we DEFINE sqrt(x) to be the POSITIVE solution to y^2 = x. In other words
sqrt(x) = x^(0.5)
From this, it is possible to prove that sqrt(a)*sqrt(b) = sqrt(ab):
sqrt(a)*sqrt(b) = a^(0.5)*b^(0.5) = (ab)^(0.5) = sqrt(ab)
For complex numbers you can't do this. Let's look at i:
i^2 = -1 fine, but also
(-i)^2 = (-1)^2 * i^2 = 1*-1 = -1
So what is sqrt(-1)? Is it i or -i? We can't use a simple rule like "take the positive one", because such a thing is ill-defined on the complex plane. The rule we use to make sqrt(z) single-valued on the complex domain is to express it as polar coordinates
z = r*exp(i*theta)
where r is the distance from the origin and theta is the angle from the x axis.
And we define sqrt(z) as sqrt(r)*exp(i*theta/2) ("take the square root of the distance from the origin, and halve the angle from the x-axis"). If we do this, then:
sqrt(a)*sqrt(b) = sqrt(r_a)sqrt(r_b)*exp(i*theta_a/2)*exp(i*theta_b/2) = sqrt(r_a*r_b)*exp(i*(theta_a+theta_b)/2)
Which might superficially look like sqrt(a*b), but you must remember that theta is periodic in 2pi: if you go 2pi radians around the origin you end up back where you started. This is fundamentally what "breaks" the equivalence between sqrt(-1)sqrt(-1) and sqrt(-1*-1). In the first, we're doing the square roots first and then multiplying:
sqrt(-1)*sqrt(-1) = exp(i*pi/2)*exp(i*pi/2) = exp(2pi*i/2) = exp(i*pi) = -1
In the second we multiply first and take the square root afterwards:
sqrt(-1*-1) = sqrt(exp(i*pi)*exp(i*pi)) = sqrt(exp(i*2pi)) = exp(0/2) = 1
doing this from memory so there might be mistakes; look up "branch cuts" for more