Mengabaikan masalah nyata dengan desain tabel Anda seperti yang disinggung dalam semua komentar dan menerima bahwa ini mungkin terbukti sangat lambat pada tabel besar, inilah cara saya melakukannya.
Pertama... Saya akan membuat pernyataan yang akan mengubah semua baris menjadi satu daftar besar yang dibatasi koma.
DECLARE @tmp VarChar(max)
SET @tmp = ''
SELECT @tmp = @tmp + ColumnA + ',' FROM TableA
Kemudian gunakan tabel valued udf split yang dijelaskan oleh artikel SO ini untuk mengubah string besar itu kembali menjadi tabel dengan klausa berbeda untuk memastikannya unik.
https://stackoverflow.com/a/2837662/261997
SELECT DISTINCT * FROM dbo.Split(',', @tmp)