operators.asciidoc 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. [role="xpack"]
  2. [testenv="basic"]
  3. [[sql-operators]]
  4. === Comparison Operators
  5. beta[]
  6. Boolean operator for comparing against one or multiple expressions.
  7. * Equality (`=`)
  8. ["source","sql",subs="attributes,callouts,macros"]
  9. --------------------------------------------------
  10. include-tagged::{sql-specs}/filter.sql-spec[whereFieldEquality]
  11. --------------------------------------------------
  12. * Null safe Equality (`<=>`)
  13. ["source","sql",subs="attributes,callouts,macros"]
  14. --------------------------------------------------
  15. include-tagged::{sql-specs}/docs.csv-spec[nullEqualsCompareWithNull]
  16. --------------------------------------------------
  17. ["source","sql",subs="attributes,callouts,macros"]
  18. --------------------------------------------------
  19. include-tagged::{sql-specs}/docs.csv-spec[nullEqualsCompareTwoNulls]
  20. --------------------------------------------------
  21. * Inequality (`<>` or `!=`)
  22. ["source","sql",subs="attributes,callouts,macros"]
  23. --------------------------------------------------
  24. include-tagged::{sql-specs}/filter.sql-spec[whereFieldNonEquality]
  25. --------------------------------------------------
  26. * Comparison (`<`, `<=`, `>`, `>=`)
  27. ["source","sql",subs="attributes,callouts,macros"]
  28. --------------------------------------------------
  29. include-tagged::{sql-specs}/filter.sql-spec[whereFieldLessThan]
  30. --------------------------------------------------
  31. * `BETWEEN`
  32. ["source","sql",subs="attributes,callouts,macros"]
  33. --------------------------------------------------
  34. include-tagged::{sql-specs}/filter.sql-spec[whereBetween]
  35. --------------------------------------------------
  36. * `IS NULL/IS NOT NULL`
  37. ["source","sql",subs="attributes,callouts,macros"]
  38. --------------------------------------------------
  39. include-tagged::{sql-specs}/filter.sql-spec[whereIsNotNullAndIsNull]
  40. --------------------------------------------------
  41. * `IN (<value1>, <value2>, ...)`
  42. ["source","sql",subs="attributes,callouts,macros"]
  43. --------------------------------------------------
  44. include-tagged::{sql-specs}/filter.sql-spec[whereWithInAndMultipleValues]
  45. --------------------------------------------------
  46. [[sql-operators-logical]]
  47. === Logical Operators
  48. beta[]
  49. Boolean operator for evaluating one or two expressions.
  50. * `AND`
  51. ["source","sql",subs="attributes,callouts,macros"]
  52. --------------------------------------------------
  53. include-tagged::{sql-specs}/filter.sql-spec[whereFieldAndComparison]
  54. --------------------------------------------------
  55. * `OR`
  56. ["source","sql",subs="attributes,callouts,macros"]
  57. --------------------------------------------------
  58. include-tagged::{sql-specs}/filter.sql-spec[whereFieldOrComparison]
  59. --------------------------------------------------
  60. * `NOT`
  61. ["source","sql",subs="attributes,callouts,macros"]
  62. --------------------------------------------------
  63. include-tagged::{sql-specs}/filter.sql-spec[whereFieldEqualityNot]
  64. --------------------------------------------------
  65. [[sql-operators-math]]
  66. === Math Operators
  67. beta[]
  68. Perform mathematical operations affecting one or two values.
  69. The result is a value of numeric type.
  70. * Add (`+`)
  71. ["source","sql",subs="attributes,callouts,macros"]
  72. --------------------------------------------------
  73. include-tagged::{sql-specs}/arithmetic.sql-spec[plus]
  74. --------------------------------------------------
  75. * Subtract (infix `-`)
  76. ["source","sql",subs="attributes,callouts,macros"]
  77. --------------------------------------------------
  78. include-tagged::{sql-specs}/arithmetic.sql-spec[minus]
  79. --------------------------------------------------
  80. * Negate (unary `-`)
  81. ["source","sql",subs="attributes,callouts,macros"]
  82. --------------------------------------------------
  83. include-tagged::{sql-specs}/arithmetic.sql-spec[unaryMinus]
  84. --------------------------------------------------
  85. * Multiply (`*`)
  86. ["source","sql",subs="attributes,callouts,macros"]
  87. --------------------------------------------------
  88. include-tagged::{sql-specs}/arithmetic.sql-spec[multiply]
  89. --------------------------------------------------
  90. * Divide (`/`)
  91. ["source","sql",subs="attributes,callouts,macros"]
  92. --------------------------------------------------
  93. include-tagged::{sql-specs}/arithmetic.sql-spec[divide]
  94. --------------------------------------------------
  95. * https://en.wikipedia.org/wiki/Modulo_operation[Modulo] or Reminder(`%`)
  96. ["source","sql",subs="attributes,callouts,macros"]
  97. --------------------------------------------------
  98. include-tagged::{sql-specs}/arithmetic.sql-spec[mod]
  99. --------------------------------------------------