PostgreSQL에서 =
연산자에 대한 연산자 별칭을 쉽게 정의 할 수 있습니까?PostgreSQL에서 연산자 별칭을 정의하는 방법은 무엇입니까?
!=
및 <>
연산자는 어떻게 해결 되었습니까? <>
연산자 만 pg_operators에있는 것 같습니다. !=
연산자가 하드 코딩 되었습니까?
이것은 자체 정의 연산자를 사용하는 응용 프로그램에 필요합니다. 대부분의 환경에서이 연산자는 =
처럼 작동해야하지만, 고유 한 연산자와 연산자 클래스를 만들어 특수한 동작을 정의하는 경우가 있습니다. 그러나 정상적인 경우 연산자는 =
연산자의 별칭 일 뿐이므로 구현이 사용되는 응용 프로그램에 투명합니다.
지금까지 무엇을했는지. 그러나 해당 연산자로 작업하는 인덱스를 얻으려면 연산자 클래스와 패밀리를 정의하고 추가 인덱스를 만들어야합니다. 예를 들어 인덱스'CREATE INDEX idx_fk1 ON tab (fk);'새로운 op 클래스를 가진 다른 인덱스'CREATE INDEX idx_fk2 ON tab (fk my_int4_ops);'가 필요합니다. 두 쿼리 모두 인덱스를 사용할 수 있습니다 :'EXPLAIN ANALYZE SELECT * FROM tab WHERE fk = 1;'그리고'EXPLAIN ANALYZE SELECT * FROM tab where fk !!!! 1;'. 그래서 많은 새로운 지표를 만들지 않으면 방법이 있는지 궁금해. –
많은 작업과 오류가 발생할 여지가 많습니다. 나는 다시 생각하고 더 나은 해결책을 찾을 것입니다. –