Měli byste používat DATEADD
je SQL server, takže pokud zkusíte tento jednoduchý výběr, uvidíte efekt
Select DATEADD(Month, -1, getdate())
Výsledek
2013-04-20 14:08:07.177
ve vašem případě zkuste tento dotaz
SELECT name
FROM (
SELECT name FROM
Hist_answer
WHERE id_city='34324' AND datetime >= DATEADD(month,-1,GETDATE())
UNION ALL
SELECT name FROM
Hist_internet
WHERE id_city='34324' AND datetime >= DATEADD(month,-1,GETDATE())
) x
GROUP BY name ORDER BY name