{"id":7018,"date":"2023-05-30T00:00:00","date_gmt":"2023-05-30T04:00:00","guid":{"rendered":"https:\/\/www.sisense.com\/medians-in-sql\/"},"modified":"2024-09-24T04:44:13","modified_gmt":"2024-09-24T08:44:13","slug":"medians-in-sql","status":"publish","type":"post","link":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/","title":{"rendered":"Medians in SQL"},"content":{"rendered":"<p><\/p>\r\n<p>Finding the <strong><em>min<\/em><\/strong>, <strong><em>max<\/em><\/strong>, and <strong><em>avg <\/em><\/strong>price of an order in your purchases table is easy. But what about the <em>median<\/em> price? Medians are much more difficult for the database to compute, so there usually isn\u2019t a built-in function like the following:<\/p>\r\n<pre class=\"wp-block-code\"><code>-- not going to work!\r\nselect median(price) from purchases<\/code><\/pre>\r\n<h2>Why is Median hard?<\/h2>\r\n<p>For the standard aggregate functions (min, max, count, etc.) it\u2019s possible to get the result in a single pass over the data, storing the current min\/max\/count along the way. If the column is indexed, the minimum or maximum value can be found without looking at any rows!<\/p>\r\n<figure class=\"wp-block-image fancybox\"><img decoding=\"async\" class=\"wp-image-78576\" src=\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/image-01-14.png\" alt=\"scan to min\" \/><\/figure>\r\n<p>Median cannot work like that because it\u2019s algorithmically much more complicated. The median is the middle value. The data needs to be sorted so that the middle record can be found.<\/p>\r\n<figure class=\"wp-block-image fancybox\"><img decoding=\"async\" class=\"wp-image-78582\" src=\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/image-02-14.png\" alt=\"scan sort min\" \/><\/figure>\r\n<h2>Finding the Median with different databases<\/h2>\r\n<p>Since median is harder than min\/max\/count and not a standard aggregate function, we\u2019ll need to do a little more work to calculate it. Here\u2019s how on several different databases:<\/p>\r\n<h3>Median on Redshift<\/h3>\r\n<p>The Redshift team recently released a <a href=\"https:\/\/docs.aws.amazon.com\/redshift\/latest\/dg\/r_Examples_of_median_WF.html\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">median window function<\/a>, making it one of the easiest syntaxes to find the median with:<\/p>\r\n<pre class=\"wp-block-code\"><code>select median(price) over () as median\r\nfrom purchases\r\nlimit 1<\/code><\/pre>\r\n<p>Note the\u00a0<em><strong>limit 1<\/strong><\/em>: Since\u00a0<em><strong>median<\/strong><\/em>\u00a0is a window function and not an aggregate function, it\u2019ll return one value for each row in the table.<\/p>\r\n<h3>Median on Postgres<\/h3>\r\n<p>If you like defining your own functions in Postgres, the\u00a0<a href=\"https:\/\/wiki.postgresql.org\/wiki\/Aggregate_Median\" target=\"_blank\" rel=\"noreferrer noopener\">Postgres Wiki has a definition for\u00a0median<\/a>. We\u2019ll do it in SQL and get Postgres to help us find the middle value by numbering all the rows with the\u00a0<em><strong>row_number()<\/strong><\/em>\u00a0window function.<\/p>\r\n<p>First, a CTE to sort and number all of the rows, with a\u00a0<em><strong>count<\/strong><\/em>\u00a0that\u2019ll help later on:<\/p>\r\n<pre class=\"wp-block-code\"><code>with ordered_purchases as (\r\n  select\r\n      price,\r\n      row_number() over (order by price) as row_id,\r\n      (select count(1) from purchases) as ct\r\n  from purchases\r\n)<\/code><\/pre>\r\n<p>Then we find the middle one or two rows and average their values:<\/p>\r\n<pre class=\"wp-block-code\"><code>select avg(price) as median\r\nfrom ordered_purchases\r\nwhere row_id between ct\/2.0 and ct\/2.0 + 1<\/code><\/pre>\r\n<p>The\u00a0<em><strong>where<\/strong><\/em>\u00a0clause ensures that we\u2019ll get the two middle values if there is an even number of values, and the single middle number if there is an odd number of values because\u00a0<em><strong>between<\/strong><\/em>\u00a0is inclusive of its bounds.<\/p>\r\n<h3>Median on MySQL<\/h3>\r\n<p>MySQL might not have window functions, but it does have variables, and we\u2019ll use them to achieve the same result.<\/p>\r\n<p>First we\u2019ll set two variables, one for the row count and one to act as the\u00a0<em><strong>row_id<\/strong><\/em>\u00a0from before:<\/p>\r\n<pre class=\"wp-block-code\"><code>set @ct := (select count(1) from purchases);\r\nset @row_id := 0;<\/code><\/pre>\r\n<p>And just like before, we average the middle one or two values:<\/p>\r\n<pre class=\"wp-block-code\"><code>select avg(price) as median\r\nfrom (select * from purchases order by price)\r\nwhere (select @row_id := @row_id + 1)\r\nbetween @ct\/2.0 and @ct\/2.0 + 1<\/code><\/pre>\r\n<p>The @row_id := @row_id + 1 syntax simply increments the @row_id counter for each row. Unlike Postgres we don\u2019t need to build up a temporary result set of rows with row_id because variables let us compute the row_id on the fly.<\/p>\r\n<h2>Bonus round: Mode<\/h2>\r\n<p>No post with avg and median is complete without mode! The mode (defined as the most frequent value) of a column can be found with a simple group and count:<\/p>\r\n<pre class=\"wp-block-code\"><code>select price as mode\r\nfrom purchases\r\ngroup by 1\r\norder by count(1) desc\r\nlimit 1<\/code><\/pre>\r\n<p>This query gives us the\u00a0<em><strong>price<\/strong><\/em>\u00a0with the greatest\u00a0<em><strong>count()<\/strong><\/em>\u00a0in the table, also known as the mode.<\/p>\r\n<p>And now you know how to compute median in SQL for Redshift, Postgres and MySQL databases!<\/p>","protected":false},"excerpt":{"rendered":"<p>Finding the min, max, and avg price of an order in your purchases table is easy. But what about the median price? Medians are much more difficult for the database to compute, so there usually isn\u2019t a built-in function like&#8230;<\/p>\n","protected":false},"author":4,"featured_media":7209,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[44],"tags":[472],"application":[10],"buyer-role":[],"buyer-stage":[],"department":[],"industry":[],"topic":[73],"class_list":["post-7018","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tech-talk","tag-data-team","application-cloud-data-teams","topic-sql-superstar"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.5 (Yoast SEO v23.8) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Medians in SQL | Sisense<\/title>\n<meta name=\"description\" content=\"Finding the min, max, and avg price of an order in your purchases table is easy. But what about the median price?\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Medians in SQL\" \/>\n<meta property=\"og:description\" content=\"Finding the min, max, and avg price of an order in your purchases table is easy. But what about the median price? Medians are much more difficult for the\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/\" \/>\n<meta property=\"og:site_name\" content=\"Sisense\" \/>\n<meta property=\"article:published_time\" content=\"2023-05-30T04:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-09-24T08:44:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/yoast-medians-blog-min.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Sisense Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/yoast-medians-blog-min.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@sisense\" \/>\n<meta name=\"twitter:site\" content=\"@sisense\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sisense Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/\"},\"author\":{\"name\":\"Sisense Team\",\"@id\":\"https:\/\/www.sisense.com\/#\/schema\/person\/e70aa3a7bbc471e4b7b8c5a7d2b36115\"},\"headline\":\"Medians in SQL\",\"datePublished\":\"2023-05-30T04:00:00+00:00\",\"dateModified\":\"2024-09-24T08:44:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/\"},\"wordCount\":507,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.sisense.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/2014\/11\/10161730\/featured-medians-blog-min.jpg\",\"keywords\":[\"data team\"],\"articleSection\":[\"Tech Talk\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/\",\"url\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/\",\"name\":\"Medians in SQL | Sisense\",\"isPartOf\":{\"@id\":\"https:\/\/www.sisense.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/2014\/11\/10161730\/featured-medians-blog-min.jpg\",\"datePublished\":\"2023-05-30T04:00:00+00:00\",\"dateModified\":\"2024-09-24T08:44:13+00:00\",\"description\":\"Finding the min, max, and avg price of an order in your purchases table is easy. But what about the median price?\",\"breadcrumb\":{\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#primaryimage\",\"url\":\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/2014\/11\/10161730\/featured-medians-blog-min.jpg\",\"contentUrl\":\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/2014\/11\/10161730\/featured-medians-blog-min.jpg\",\"width\":1200,\"height\":628,\"caption\":\"featured medians blog min\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.sisense.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Medians in SQL\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.sisense.com\/#website\",\"url\":\"https:\/\/www.sisense.com\/\",\"name\":\"Sisense\",\"description\":\"Build your business with anywhere-analytics\",\"publisher\":{\"@id\":\"https:\/\/www.sisense.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.sisense.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.sisense.com\/#organization\",\"name\":\"Sisense\",\"url\":\"https:\/\/www.sisense.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sisense.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/sisense-yoast-og.jpg\",\"contentUrl\":\"https:\/\/cdn.sisense.com\/wp-content\/uploads\/sisense-yoast-og.jpg\",\"width\":1200,\"height\":600,\"caption\":\"Sisense\"},\"image\":{\"@id\":\"https:\/\/www.sisense.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/sisense\",\"https:\/\/www.linkedin.com\/company\/sisense\",\"https:\/\/github.com\/sisense\/\"],\"description\":\"Sisense accelerates product innovation through AI\/ML capabilities. Our global analytics platform lets customers drive better, faster decisions for their business and end users.\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.sisense.com\/#\/schema\/person\/e70aa3a7bbc471e4b7b8c5a7d2b36115\",\"name\":\"Sisense Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sisense.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/213e415f47bc3c7f0155a0755b1cea8c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/213e415f47bc3c7f0155a0755b1cea8c?s=96&d=mm&r=g\",\"caption\":\"Sisense Team\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Medians in SQL | Sisense","description":"Finding the min, max, and avg price of an order in your purchases table is easy. But what about the median price?","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/","og_locale":"en_US","og_type":"article","og_title":"Medians in SQL","og_description":"Finding the min, max, and avg price of an order in your purchases table is easy. But what about the median price? Medians are much more difficult for the","og_url":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/","og_site_name":"Sisense","article_published_time":"2023-05-30T04:00:00+00:00","article_modified_time":"2024-09-24T08:44:13+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/cdn.sisense.com\/wp-content\/uploads\/yoast-medians-blog-min.jpg","type":"image\/jpeg"}],"author":"Sisense Team","twitter_card":"summary_large_image","twitter_image":"https:\/\/cdn.sisense.com\/wp-content\/uploads\/yoast-medians-blog-min.jpg","twitter_creator":"@sisense","twitter_site":"@sisense","twitter_misc":{"Written by":"Sisense Team","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#article","isPartOf":{"@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/"},"author":{"name":"Sisense Team","@id":"https:\/\/www.sisense.com\/#\/schema\/person\/e70aa3a7bbc471e4b7b8c5a7d2b36115"},"headline":"Medians in SQL","datePublished":"2023-05-30T04:00:00+00:00","dateModified":"2024-09-24T08:44:13+00:00","mainEntityOfPage":{"@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/"},"wordCount":507,"commentCount":0,"publisher":{"@id":"https:\/\/www.sisense.com\/#organization"},"image":{"@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn.sisense.com\/wp-content\/uploads\/2014\/11\/10161730\/featured-medians-blog-min.jpg","keywords":["data team"],"articleSection":["Tech Talk"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.sisense.com\/blog\/medians-in-sql\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/","url":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/","name":"Medians in SQL | Sisense","isPartOf":{"@id":"https:\/\/www.sisense.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#primaryimage"},"image":{"@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn.sisense.com\/wp-content\/uploads\/2014\/11\/10161730\/featured-medians-blog-min.jpg","datePublished":"2023-05-30T04:00:00+00:00","dateModified":"2024-09-24T08:44:13+00:00","description":"Finding the min, max, and avg price of an order in your purchases table is easy. But what about the median price?","breadcrumb":{"@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.sisense.com\/blog\/medians-in-sql\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#primaryimage","url":"https:\/\/cdn.sisense.com\/wp-content\/uploads\/2014\/11\/10161730\/featured-medians-blog-min.jpg","contentUrl":"https:\/\/cdn.sisense.com\/wp-content\/uploads\/2014\/11\/10161730\/featured-medians-blog-min.jpg","width":1200,"height":628,"caption":"featured medians blog min"},{"@type":"BreadcrumbList","@id":"https:\/\/www.sisense.com\/blog\/medians-in-sql\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.sisense.com\/"},{"@type":"ListItem","position":2,"name":"Medians in SQL"}]},{"@type":"WebSite","@id":"https:\/\/www.sisense.com\/#website","url":"https:\/\/www.sisense.com\/","name":"Sisense","description":"Build your business with anywhere-analytics","publisher":{"@id":"https:\/\/www.sisense.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sisense.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.sisense.com\/#organization","name":"Sisense","url":"https:\/\/www.sisense.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sisense.com\/#\/schema\/logo\/image\/","url":"https:\/\/cdn.sisense.com\/wp-content\/uploads\/sisense-yoast-og.jpg","contentUrl":"https:\/\/cdn.sisense.com\/wp-content\/uploads\/sisense-yoast-og.jpg","width":1200,"height":600,"caption":"Sisense"},"image":{"@id":"https:\/\/www.sisense.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/sisense","https:\/\/www.linkedin.com\/company\/sisense","https:\/\/github.com\/sisense\/"],"description":"Sisense accelerates product innovation through AI\/ML capabilities. Our global analytics platform lets customers drive better, faster decisions for their business and end users."},{"@type":"Person","@id":"https:\/\/www.sisense.com\/#\/schema\/person\/e70aa3a7bbc471e4b7b8c5a7d2b36115","name":"Sisense Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sisense.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/213e415f47bc3c7f0155a0755b1cea8c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/213e415f47bc3c7f0155a0755b1cea8c?s=96&d=mm&r=g","caption":"Sisense Team"}}]}},"_links":{"self":[{"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/posts\/7018"}],"collection":[{"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/comments?post=7018"}],"version-history":[{"count":0,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/posts\/7018\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/media\/7209"}],"wp:attachment":[{"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/media?parent=7018"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/categories?post=7018"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/tags?post=7018"},{"taxonomy":"application","embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/application?post=7018"},{"taxonomy":"buyer-role","embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/buyer-role?post=7018"},{"taxonomy":"buyer-stage","embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/buyer-stage?post=7018"},{"taxonomy":"department","embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/department?post=7018"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/industry?post=7018"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.sisense.com\/wp-json\/wp\/v2\/topic?post=7018"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}