{"id":22765,"date":"2023-09-15T11:00:00","date_gmt":"2023-09-15T09:00:00","guid":{"rendered":"https:\/\/www.marketinet.com\/blog\/sql-basics-salesforce-marketing-cloud\/"},"modified":"2025-04-08T15:23:02","modified_gmt":"2025-04-08T13:23:02","slug":"sql-basics-salesforce-marketing-cloud","status":"publish","type":"post","link":"https:\/\/www.marketinet.com\/en\/blog\/sql-basics-salesforce-marketing-cloud\/","title":{"rendered":"The key points of SQL for Salesforce Marketing Cloud. What is SQL?"},"content":{"rendered":"<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">SQL or Structured Query Language is a language designed to manage and retrieve information from relational database management systems. One of its main characteristics is the handling of algebra and relational calculus to perform queries in order to retrieve, easily, information from databases, as well as make changes to them.<\/span><\/p>\n<p><!--more--><\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">In the case of using Salesforce Marketing Cloud SQL Query and as we mentioned in a previous article: <a href=\"\/blog\/como-sacar-partido-a-sql-query-salesforce-marketing-cloud\" rel=\"noopener\">How to take advantage of Salesforce Marketing Cloud SQL Queries<\/a>, we will only use SELECT to retrieve information, not update or delete records.<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">The <a href=\"\/blog\/como-utilizar-data-extensions-en-marketing-cloud\" rel=\"noopener\">Marketing Cloud and Contact Builder Data Extensions<\/a> use a relational database. You also use it in Data Views and your own Data Extensions as long as you establish and define relationships of this type.<\/span><\/p>\n<p>\u00a0<\/p>\n<p>In short, you need the best way to access all this information and be able to exploit it with the most interesting segmentations. And not only for shipments, but also to make personalized or mixed reports with your own data.<\/p>\n<p>\u00a0<\/p>\n<p>{{cta(&#8217;52fa9c99-860e-4fbd-b8e0-8084060f20e8&#8242;)}}<\/p>\n<p>\u00a0<\/p>\n<h2>SQL basics<\/h2>\n<p>\u00a0<\/p>\n<p><img decoding=\"async\" data-src=\"https:\/\/www.marketinet.com\/wp-content\/uploads\/2024\/06\/articulos\/salesforce-marketing-cloud\/image-png.gif\" alt=\"image-png\" width=\"430\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 430px; --smush-placeholder-aspect-ratio: 430\/148;\" \/><\/p>\n<p>\u00a0<\/p>\n<h3>Meaning of each element&#8230;<\/h3>\n<p>\u00a0<\/p>\n<ul>\n<li>\n<p><span lang=\"ES-ES\" data-contrast=\"none\"><strong>SELECT:<\/strong>\u202f<\/span><span lang=\"ES-ES\" data-contrast=\"auto\">With this we indicate that we want to make a selection, there are other types in SQL, but in SQL QUERY of Marketing Cloud only SELECT can be used.<\/span><\/p>\n<\/li>\n<li>\n<p><strong><span lang=\"ES-ES\" data-contrast=\"none\">DISTINCT:\u202f<\/span><\/strong><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">Indicates that we want to select only non-repeating distinct values. That is, if you do a SELECT from an ID, and it in the table has these values, 1,2,2,3,4,4,5, a SELECT DISTINCT will return 1,2,3,4,5<\/span><\/p>\n<\/li>\n<li>\n<p><strong><span lang=\"ES-ES\" data-contrast=\"none\">ALL:\u202fThis is used to return all, as it is the default value, I have never seen it used (there will be some purists).<\/span><\/strong><\/p>\n<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<h3>Field name<\/h3>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">Now it is the turn of the fields that we want to recover, normally it is the list of fields separated by commas, for example, name, lastname1, email or use an asterisk * to recover all the fields.<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">If the query is in several tables at the same time (we&#8217;ll see how to do this), we must specify the name of the table before the name of the field, or if we have used an alias for the table, the alias alternatively.<\/span><\/p>\n<p>\u00a0<\/p>\n<h3>AS<\/h3>\n<p>\u00a0<\/p>\n<p><span lang=\"ES-ES\" data-contrast=\"none\">We use AS to generate aliases, both for a table and a field. We can do something like SELECT CONCAT(p.firstname,&#8217; &#8216;,p.lastname1) AS theFullName FROM person AS p.<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span lang=\"ES-ES\" data-contrast=\"none\"><strong>FROM:<\/strong><\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">\u00a0Indicates the table from which we want to retrieve the data. In the case of retrieving data from several tables, we will see in another article how to use the JOIN clause<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span lang=\"ES-ES\" data-contrast=\"none\"><strong>WHERE<\/strong>:<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">\u00a0It is like a filter or condition of the data that is going to be returned. SELECT * FROM people WHERE name=&#8217;Santiago&#8217; will return only the users with whom the name &#8220;Santiago&#8221; exactly matches.<\/span><\/p>\n<p>\u00a0<\/p>\n<h3><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">Conditions of the where clause<\/span><\/h3>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">All of the conditions we use in &#8220;where&#8221; will return either TRUE or FALSE, depending on whether the record matches it or not, and will display only TRUEs in the resulting table. All of the conditions we use in &#8220;which&#8221; will return either TRUE or FALSE, depending on whether the record matches it or not, and will display only TRUEs in the resulting table.<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">You can use operators such as: &gt;, &gt;=, &lt;, &lt;=, =, for different there are two \u00a1= or &lt;&gt; and sometimes, depending on the SQL engine, it supports both or only one of them.<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">Another option that we have to verify is that when the field is NULL, it says IS NULL; otherwise it would say IS NOT NULL. Sometimes there is confusion with this concept, NULL is completely empty, if we introduce a &#8220;&#8221; in that field, it will no longer be null, or simply if we delete the field without specifying that it become NULL. For this reason, it is often better to put the condition WHERE field1=&#8221; OR field1 IS NULL<\/span><\/p>\n<p>\u00a0<\/p>\n<p><strong><span data-contrast=\"auto\">LIKE<\/span><\/strong><span data-contrast=\"auto\">:\u00a0<\/span>Before we have used the = to search for &#8220;Santiago&#8221;, but if we want to get both &#8220;Santiagos&#8221; and any other name that begins with &#8220;Sa&#8221;, Sandra, Sara, etc. The condition would be LIKE &#8216;Sa%&#8217;. That is, in &#8220;like&#8221; we can use wildcards, the percentage % accepts any string of characters and if we use an underscore it is a single character. For example, if we use this search %a_a% will search for any word like: squid, cara, Aramaic, sara, etc. That is, any word that has one character &#8220;a&#8221; and another &#8220;a&#8221;, whether or not it then has more characters before the first &#8220;a&#8221; or after the last &#8220;a&#8221;.<\/p>\n<p><strong><span data-contrast=\"auto\">BETWEEN<\/span><\/strong><strong><span data-contrast=\"auto\">\u2026. AND<\/span><\/strong><span data-contrast=\"auto\">: <\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:240}\">to search for a range of values \u200b\u200bPrice BETWEEN 1 AND 50<\/span><\/p>\n<p>\u00a0<\/p>\n<p><strong><span data-contrast=\"auto\">IN(<\/span><\/strong><strong><span data-contrast=\"auto\">..,.., \u2026<\/span><\/strong><strong><span data-contrast=\"auto\">)<\/span><\/strong><span data-contrast=\"auto\">: <\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:240}\">so you don&#8217;t have to do many ORs, you can include IN, WHERE colors IN(&#8216;red&#8217;,&#8217;green&#8217;,&#8217;blue&#8217;)<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\"><strong><span lang=\"ES-ES\" data-contrast=\"auto\">OR, AND and NOT: <\/span><\/strong><\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">You can use <strong>logical operators such as OR, NOT, and AND, and use parentheses to prioritize one criterion over another.<\/strong><\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\"><span lang=\"ES-ES\" data-contrast=\"none\"><strong>GROUP BY<\/strong>:\u202f<\/span>\u00a0Specifies the grouping that is given to the data. It is always used in combination with aggregate functions.<\/span><\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">SELECT color, COUNT(id_shoe) FROM shoes GROUP BY color<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">It will return the number of shoes per color in our table.<\/span><\/p>\n<p>\u00a0<\/p>\n<p><strong><span data-contrast=\"none\">HAVING:\u202f<\/span><\/strong><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">It is similar to WHERE but applies to the results returned by the query. It should always be applied together with GROUP BY.<\/span><\/p>\n<p>\u00a0<\/p>\n<p><strong><span data-contrast=\"none\">ORDER BY:<\/span><\/strong><span data-contrast=\"none\"> It is used to order the results, you can order them according to several fields. By default it is done in ascending order ASC and if not specified otherwise it will be so. If you want descending use DESC<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">{{cta(&#8216;da84ff16-530b-4d9d-bc78-b7102ff27b51&#8242;,&#8217;justifycenter&#8217;)}}<\/span><\/p>\n<p>\u00a0<\/p>\n<h2><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">Aggregation functions<\/span><\/h2>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">When we use group, we usually need aggregation functions, there are different ones depending on the SQL of your database, as far as Marketing Cloud is concerned, you can find the following:<\/span><\/p>\n<p>\u00a0<\/p>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"9\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\">\n<p><strong><span data-contrast=\"auto\">COUNT<\/span><\/strong><span data-contrast=\"auto\">: <\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:240}\">returns the total number of rows selected by the query.<\/span><\/p>\n<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"9\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\">\n<p><strong><span data-contrast=\"auto\">MIN<\/span><\/strong><span data-contrast=\"auto\">: <\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:240}\">returns the minimum value of the field we specify.<\/span><\/p>\n<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"9\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\">\n<p><strong><span data-contrast=\"auto\">MAX<\/span><\/strong><span data-contrast=\"auto\">: <\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:240}\">returns the maximum value of the field we specify.<\/span><\/p>\n<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"9\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\">\n<p><strong><span data-contrast=\"auto\">SUM<\/span><\/strong><span data-contrast=\"auto\">: adds the values \u200b\u200bof the field that we specify. It can only be used in numeric columns.<\/span><\/p>\n<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"9\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\">\n<p><strong><span data-contrast=\"auto\">AVG<\/span><\/strong><span data-contrast=\"auto\">: returns the average value of the field we specify. It can only be used in numeric columns.<\/span><\/p>\n<p>\u00a0<\/p>\n<\/li>\n<\/ul>\n<h2>AND INNER?<\/h2>\n<p>We have not forgotten the cases in which we want to &#8220;cross&#8221; several tables, it is a topic that is worth a whole article and we will see it in a later article: The power of joining tables with SQL in SalesForce Marketing Cloud.<\/p>\n<p>\u00a0<\/p>\n<p>As a foretaste, given 2 tables, with a related field, for example, imagine that the field NIF exists in both, something like.<\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">SELECT * FROM table1 AS t1 INNER JOIN table2 as t2 ON t1.NIF=t2.NIF will return all the matching records, that means they have the same number in both tables, and with the fields of both tables.<\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\"><img decoding=\"async\" data-src=\"https:\/\/www.marketinet.com\/wp-content\/uploads\/2024\/06\/articulos\/salesforce-marketing-cloud\/undefined-Jan-21-2021-06-01-28-69-PM.gif\" alt=\"SQL Select function\" width=\"473\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 735px; --smush-placeholder-aspect-ratio: 735\/496;\" \/><\/span><\/p>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;201341983&quot;:0,&quot;335559739&quot;:210,&quot;335559740&quot;:240}\">Which is an intersection of sets.<\/span><\/p>\n<p><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559738&quot;:120,&quot;335559739&quot;:240,&quot;335559740&quot;:240,&quot;469777462&quot;:[916,1832,2748,3664,4580,5496,6412,7328,8244,9160,10076,10992,11908,12824,13740,14656],&quot;469777927&quot;:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],&quot;469777928&quot;:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]}\">\u00a0<\/span><\/p>\n<h2>Conclusion\u00a0<\/h2>\n<p>\u00a0<\/p>\n<p><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">As an introduction to the SQL language, we have seen a large part in this article, especially what is the basic structure of an SQL SELECT statement, later we will see a very interesting part that is what we have advanced in this last part, doing queries on multiple tables at once.<\/span><\/p>\n<p>\u00a0<\/p>\n<hr \/>\n<p>If you liked this article, you might also be interested in:<\/p>\n<p>\u00a0<\/p>\n<ul>\n<li>\n<p><a href=\"\/en\/thedigitalmarketinglab\/segmentations-sql-dataviews-salesforce-marketing-cloud\" target=\"_blank\" rel=\"noopener\">Segmentations, SQL and DataViews in Salesforce Marketing Cloud<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"\/en\/thedigitalmarketinglab\/ebook-efective-segmentation-salesforce-marketing-cloud\" target=\"_blank\" rel=\"noopener\">New ebook: Guide to Effective Segmentation in Salesforce Marketing Cloud<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"\/en\/thedigitalmarketinglab\/how-to-take-advantage-sql-query-salesforce-marketing-cloud\" target=\"_blank\" rel=\"noopener\">How to Take Advantage of SQL Query in Salesforce Marketing Cloud<\/a><\/p>\n<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.marketinet.com\/ebooks\/ecosistema-datos-salesforce-marketing-cloud?utm_source=blog&amp;utm_medium=inbound&amp;utm_campaign=cta_recurso_blog_ebook_ecosistema_de_datos_en_salesforce_marketing_cloud\"><img decoding=\"async\" width=\"800\" height=\"200\" data-src=\"https:\/\/www.marketinet.com\/wp-content\/uploads\/2024\/01\/800x200_banner_ebook_ecosistema_de_datos_en_salesforce_marketing_cloud.jpg\" alt=\"eBook Ecosistema de datos en Salesforce Marketing Cloud \" class=\"wp-image-1176 lazyload\" data-srcset=\"https:\/\/www.marketinet.com\/wp-content\/uploads\/2024\/01\/800x200_banner_ebook_ecosistema_de_datos_en_salesforce_marketing_cloud.jpg 800w, https:\/\/www.marketinet.com\/wp-content\/uploads\/2024\/01\/800x200_banner_ebook_ecosistema_de_datos_en_salesforce_marketing_cloud-480x120.jpg 480w\" data-sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 800px, 100vw\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 800px; --smush-placeholder-aspect-ratio: 800\/200;\" \/><\/a><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>SQL or Structured Query Language is a language designed to manage and retrieve information from relational database management systems. One of its main characteristics is the handling of algebra and relational calculus to perform queries in order to retrieve, easily, information from databases, as well as make changes to them.<\/p>\n","protected":false},"author":36,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[1],"tags":[165],"class_list":["post-22765","post","type-post","status-publish","format-standard","hentry","category-sin-categorizar","tag-sf-marketing-cloud"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/posts\/22765","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/users\/36"}],"replies":[{"embeddable":true,"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/comments?post=22765"}],"version-history":[{"count":0,"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/posts\/22765\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/media?parent=22765"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/categories?post=22765"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.marketinet.com\/en\/wp-json\/wp\/v2\/tags?post=22765"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}