'da kullanılan işlevi değiştirin. Altta yatan işlevi değiştirdiğimde bir işlev üzerine oluşturulmuş bir dizine ne olur?Dizin
CREATE OR REPLACE FUNCTION clean_name(n text)
RETURNS TEXT AS
$BODY$
DECLARE
rec TEXT;
BEGIN
EXECUTE
'SELECT Regexp_replace(' || quote_literal(n) || ', ''[a-z]'', '''', ''g'');'
INTO rec;
RETURN rec;
END;
$BODY$ LANGUAGE plpgsql IMMUTABLE
;
Sonra bir dizin oluşturun::
CREATE INDEX my_table_upper_name_btree
ON schema.my_table USING GIST (my_text_field);
Ama sonra yerine büyük harf harf kaldırmak için işlevini yeniden tanımlamak karar
Demek, bir işlev clean_name()
olarak tanımlanır var. Oluşturduğum endekse ne oluyor? Kendi başına mı değişiyor? Yine DROP
ve CREATE
muyum? VACUUM [ANALYZE] [FULL]
?
Versiyondan bağımsız olarak cevaplarla ilgileniyorum. –
Sonra belirtilmesi gereken - en iyi kullandığınız sürümle birlikte. –