📄 oper.sgml
字号:
<ENTRY>5 % 4</ENTRY> </ROW> <ROW> <ENTRY> % </ENTRY> <ENTRY>Truncate</ENTRY> <ENTRY>% 4.5</ENTRY> </ROW> <ROW> <ENTRY> * </ENTRY> <ENTRY>Multiplication</ENTRY> <ENTRY>2 * 3</ENTRY> </ROW> <ROW> <ENTRY> + </ENTRY> <ENTRY>Addition</ENTRY> <ENTRY>2 + 3</ENTRY> </ROW> <ROW> <ENTRY> - </ENTRY> <ENTRY>Subtraction</ENTRY> <ENTRY>2 - 3</ENTRY> </ROW> <ROW> <ENTRY> / </ENTRY> <ENTRY>Division</ENTRY> <ENTRY>4 / 2</ENTRY> </ROW> <ROW> <ENTRY> : </ENTRY> <ENTRY>Natural Exponentiation</ENTRY> <ENTRY>: 3.0</ENTRY> </ROW> <ROW> <ENTRY> ; </ENTRY> <ENTRY>Natural Logarithm</ENTRY> <ENTRY>(; 5.0)</ENTRY> </ROW> <ROW> <ENTRY> @ </ENTRY> <ENTRY>Absolute value</ENTRY> <ENTRY>@ -5.0</ENTRY> </ROW> <ROW> <ENTRY> ^ </ENTRY> <ENTRY>Exponentiation</ENTRY> <ENTRY>2.0 ^ 3.0</ENTRY> </ROW> <ROW> <ENTRY> |/ </ENTRY> <ENTRY>Square root</ENTRY> <ENTRY>|/ 25.0</ENTRY> </ROW> <ROW> <ENTRY> ||/ </ENTRY> <ENTRY>Cube root</ENTRY> <ENTRY>||/ 27.0</ENTRY> </ROW> </TBODY> </TGROUP> </TABLE> </Para> </sect1> <sect1> <title>Geometric Operators</title> <Para> <TABLE TOCENTRY="1"> <TITLE><ProductName>Postgres</ProductName> Geometric Operators</TITLE> <TITLEABBREV>Operators</TITLEABBREV> <TGROUP COLS="3"> <THEAD> <ROW> <ENTRY>Operator</ENTRY> <ENTRY>Description</ENTRY> <ENTRY>Usage</ENTRY> </ROW> </THEAD> <TBODY> <ROW> <ENTRY> + </ENTRY> <ENTRY>Translation</ENTRY> <ENTRY>'((0,0),(1,1))'::box + '(2.0,0)'::point</ENTRY> </ROW> <ROW> <ENTRY> - </ENTRY> <ENTRY>Translation</ENTRY> <ENTRY>'((0,0),(1,1))'::box - '(2.0,0)'::point</ENTRY> </ROW> <ROW> <ENTRY> * </ENTRY> <ENTRY>Scaling/rotation</ENTRY> <ENTRY>'((0,0),(1,1))'::box * '(2.0,0)'::point</ENTRY> </ROW> <ROW> <ENTRY> / </ENTRY> <ENTRY>Scaling/rotation</ENTRY> <ENTRY>'((0,0),(2,2))'::box / '(2.0,0)'::point</ENTRY> </ROW> <ROW> <ENTRY> # </ENTRY> <ENTRY>Intersection</ENTRY> <ENTRY>'((1,-1),(-1,1))' # '((1,1),(-1,-1))'</ENTRY> </ROW> <ROW> <ENTRY> # </ENTRY> <ENTRY>Number of points in polygon</ENTRY> <ENTRY># '((1,0),(0,1),(-1,0))'</ENTRY> </ROW> <ROW> <ENTRY> ## </ENTRY> <ENTRY>Point of closest proximity</ENTRY> <ENTRY>'(0,0)'::point ## '((2,0),(0,2))'::lseg</ENTRY> </ROW> <ROW> <ENTRY> && </ENTRY> <ENTRY>Overlaps?</ENTRY> <ENTRY>'((0,0),(1,1))'::box && '((0,0),(2,2))'::box</ENTRY> </ROW> <ROW> <ENTRY> &< </ENTRY> <ENTRY>Overlaps to left?</ENTRY> <ENTRY>'((0,0),(1,1))'::box &< '((0,0),(2,2))'::box</ENTRY> </ROW> <ROW> <ENTRY> &> </ENTRY> <ENTRY>Overlaps to right?</ENTRY> <ENTRY>'((0,0),(3,3))'::box &> '((0,0),(2,2))'::box</ENTRY> </ROW> <ROW> <ENTRY> <-> </ENTRY> <ENTRY>Distance between</ENTRY> <ENTRY>'((0,0),1)'::circle <-> '((5,0),1)'::circle</ENTRY> </ROW> <ROW> <ENTRY> << </ENTRY> <ENTRY>Left of?</ENTRY> <ENTRY>'((0,0),1)'::circle << '((5,0),1)'::circle</ENTRY> </ROW> <ROW> <ENTRY> <^ </ENTRY> <ENTRY>Is below?</ENTRY> <ENTRY>'((0,0),1)'::circle <^ '((0,5),1)'::circle</ENTRY> </ROW> <ROW> <ENTRY> >> </ENTRY> <ENTRY>Is right of?</ENTRY> <ENTRY>'((5,0),1)'::circle >> '((0,0),1)'::circle</ENTRY> </ROW> <ROW> <ENTRY> >^ </ENTRY> <ENTRY>Is above?</ENTRY> <ENTRY>'((0,5),1)'::circle >^ '((0,0),1)'::circle</ENTRY> </ROW> <ROW> <ENTRY> ?# </ENTRY> <ENTRY>Intersects or overlaps</ENTRY> <ENTRY>'((-1,0),(1,0))'::lseg ?# '((-2,-2),(2,2))'::box;</ENTRY> </ROW> <ROW> <ENTRY> ?- </ENTRY> <ENTRY>Is horizontal?</ENTRY> <ENTRY>'(1,0)'::point ?- '(0,0)'::point</ENTRY> </ROW> <ROW> <ENTRY> ?-| </ENTRY> <ENTRY>Is perpendicular?</ENTRY> <ENTRY>'((0,0),(0,1))'::lseg ?-| '((0,0),(1,0))'::lseg</ENTRY> </ROW> <ROW> <ENTRY> @-@ </ENTRY> <ENTRY>Length or circumference</ENTRY> <ENTRY>@-@ '((0,0),(1,0))'::path</ENTRY> </ROW> <ROW> <ENTRY> ?| </ENTRY> <ENTRY>Is vertical?</ENTRY> <ENTRY>'(0,1)'::point ?| '(0,0)'::point</ENTRY> </ROW> <ROW> <ENTRY> ?|| </ENTRY> <ENTRY>Is parallel?</ENTRY> <ENTRY>'((-1,0),(1,0))'::lseg ?|| '((-1,2),(1,2))'::lseg</ENTRY> </ROW> <ROW> <ENTRY> @ </ENTRY> <ENTRY>Contained or on</ENTRY> <ENTRY>'(1,1)'::point @ '((0,0),2)'::circle</ENTRY> </ROW> <ROW> <ENTRY> @@ </ENTRY> <ENTRY>Center of</ENTRY> <ENTRY>@@ '((0,0),10)'::circle</ENTRY> </ROW> <ROW> <ENTRY> ~= </ENTRY> <ENTRY>Same as</ENTRY> <ENTRY>'((0,0),(1,1))'::polygon ~= '((1,1),(0,0))'::polygon</ENTRY> </ROW> </TBODY> </TGROUP> </TABLE> </Para> </sect1> <sect1> <title>Time Interval Operators</title> <Para> The time interval data type <Type>tinterval</Type> is a legacy from the original date/time types and is not as well supported as the more modern types. There are several operators for this type. <TABLE TOCENTRY="1"> <TITLE><ProductName>Postgres</ProductName> Time Interval Operators</TITLE> <TITLEABBREV>Operators</TITLEABBREV> <TGROUP COLS="3"> <THEAD> <ROW> <ENTRY>Operator</ENTRY> <ENTRY>Description</ENTRY> <ENTRY>Usage</ENTRY> </ROW> </THEAD> <TBODY> <ROW> <ENTRY> #< </ENTRY> <ENTRY>Interval less than?</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> #<= </ENTRY> <ENTRY>Interval less than or equal to?</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> #<> </ENTRY> <ENTRY>Interval not equal?</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> #= </ENTRY> <ENTRY>Interval equal?</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> #> </ENTRY> <ENTRY>Interval greater than?</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> #>= </ENTRY> <ENTRY>Interval greater than or equal to?</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> <#> </ENTRY> <ENTRY>Convert to time interval</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> << </ENTRY> <ENTRY>Interval less than?</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> | </ENTRY> <ENTRY>Start of interval</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> ~= </ENTRY> <ENTRY>Same as</ENTRY> <ENTRY></ENTRY> </ROW> <ROW> <ENTRY> <?> </ENTRY> <ENTRY>Time inside interval?</ENTRY> <ENTRY></ENTRY> </ROW> </TBODY> </TGROUP> </TABLE> </Para> </sect1> <Sect1> <title id="cidr-opers">IP V4 CIDR Operators</title> <Para> <TABLE TOCENTRY="1"> <TITLE><ProductName>Postgres</ProductName>IP V4 CIDR Operators</TITLE> <TITLEABBREV>Operators</TITLEABBREV> <TGROUP COLS="3"> <THEAD> <ROW> <ENTRY>Operator</ENTRY> <ENTRY>Description</ENTRY> <ENTRY>Usage</ENTRY> </ROW> </THEAD> <TBODY> <ROW> <ENTRY> < </ENTRY> <ENTRY>Less than</ENTRY> <ENTRY>'192.168.1.5'::cidr < '192.168.1.6'::cidr</ENTRY> </ROW> <ROW> <ENTRY> <= </ENTRY> <ENTRY>Less than or equal</ENTRY> <ENTRY>'192.168.1.5'::cidr <= '192.168.1.5'::cidr</ENTRY> </ROW> <ROW> <ENTRY> = </ENTRY> <ENTRY>Equals</ENTRY> <ENTRY>'192.168.1.5'::cidr = '192.168.1.5'::cidr</ENTRY> </ROW> <ROW> <ENTRY> >= </ENTRY> <ENTRY>Greater or equal</ENTRY> <ENTRY>'192.168.1.5'::cidr >= '192.168.1.5'::cidr</ENTRY> </ROW> <ROW> <ENTRY> > </ENTRY> <ENTRY>Greater</ENTRY> <ENTRY>'192.168.1.5'::cidr > '192.168.1.4'::cidr</ENTRY> </ROW> <ROW> <ENTRY> <> </ENTRY> <ENTRY>Not equal</ENTRY> <ENTRY>'192.168.1.5'::cidr <> '192.168.1.4'::cidr</ENTRY> </ROW> <ROW> <ENTRY> << </ENTRY> <ENTRY>is contained within</ENTRY> <ENTRY>'192.168.1.5'::cidr << '192.168.1/24'::cidr</ENTRY> </ROW> <ROW> <ENTRY> <<= </ENTRY> <ENTRY>is contained within or equals</ENTRY> <ENTRY>'192.168.1/24'::cidr <<= '192.168.1/24'::cidr</ENTRY> </ROW> <ROW> <ENTRY> >> </ENTRY> <ENTRY>contains</ENTRY> <ENTRY>'192.168.1/24'::cidr >> '192.168.1.5'::cidr</ENTRY> </ROW> <ROW> <ENTRY> >>= </ENTRY> <ENTRY>contains or equals</ENTRY> <ENTRY>'192.168.1/24'::cidr >>= '192.168.1/24'::cidr</ENTRY> </ROW> </TBODY> </TGROUP> </TABLE> </Para> </Sect1> <Sect1> <title id="inet-opers">IP V4 INET Operators</title> <Para> <TABLE TOCENTRY="1"> <TITLE><ProductName>Postgres</ProductName>IP V4 INET Operators</TITLE> <TITLEABBREV>Operators</TITLEABBREV> <TGROUP COLS="3"> <THEAD> <ROW> <ENTRY>Operator</ENTRY> <ENTRY>Description</ENTRY> <ENTRY>Usage</ENTRY> </ROW> </THEAD> <TBODY> <ROW> <ENTRY> < </ENTRY> <ENTRY>Less than</ENTRY> <ENTRY>'192.168.1.5'::inet < '192.168.1.6'::inet</ENTRY> </ROW> <ROW> <ENTRY> <= </ENTRY> <ENTRY>Less than or equal</ENTRY> <ENTRY>'192.168.1.5'::inet <= '192.168.1.5'::inet</ENTRY> </ROW> <ROW> <ENTRY> = </ENTRY> <ENTRY>Equals</ENTRY> <ENTRY>'192.168.1.5'::inet = '192.168.1.5'::inet</ENTRY> </ROW> <ROW> <ENTRY> >= </ENTRY> <ENTRY>Greater or equal</ENTRY> <ENTRY>'192.168.1.5'::inet >= '192.168.1.5'::inet</ENTRY> </ROW> <ROW> <ENTRY> > </ENTRY> <ENTRY>Greater</ENTRY> <ENTRY>'192.168.1.5'::inet > '192.168.1.4'::inet</ENTRY> </ROW> <ROW> <ENTRY> <> </ENTRY> <ENTRY>Not equal</ENTRY> <ENTRY>'192.168.1.5'::inet <> '192.168.1.4'::inet</ENTRY> </ROW> <ROW> <ENTRY> << </ENTRY> <ENTRY>is contained within</ENTRY> <ENTRY>'192.168.1.5'::inet << '192.168.1/24'::inet</ENTRY> </ROW> <ROW> <ENTRY> <<= </ENTRY> <ENTRY>is contained within or equals</ENTRY> <ENTRY>'192.168.1/24'::inet <<= '192.168.1/24'::inet</ENTRY> </ROW> <ROW> <ENTRY> >> </ENTRY> <ENTRY>contains</ENTRY> <ENTRY>'192.168.1/24'::inet >> '192.168.1.5'::inet</ENTRY> </ROW> <ROW> <ENTRY> >>= </ENTRY> <ENTRY>contains or equals</ENTRY> <ENTRY>'192.168.1/24'::inet >>= '192.168.1/24'::inet</ENTRY> </ROW> </TBODY> </TGROUP> </TABLE> </Para> </Sect1> </Chapter><!-- Keep this comment at the end of the fileLocal variables:mode: sgmlsgml-omittag:nilsgml-shorttag:tsgml-minimize-attributes:nilsgml-always-quote-attributes:tsgml-indent-step:1sgml-indent-data:tsgml-parent-document:nilsgml-default-dtd-file:"./reference.ced"sgml-exposed-tags:nilsgml-local-catalogs:"/usr/lib/sgml/CATALOG"sgml-local-ecat-files:nilEnd:-->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -