{"id":1092,"date":"2020-09-03T07:00:00","date_gmt":"2020-09-03T04:00:00","guid":{"rendered":"https:\/\/www.dataplatform.gr\/?p=1092"},"modified":"2025-04-30T13:29:37","modified_gmt":"2025-04-30T10:29:37","slug":"prochorimenes-chriseis-sql-queries","status":"publish","type":"post","link":"https:\/\/www.dataplatform.gr\/en\/prochorimenes-chriseis-sql-queries\/","title":{"rendered":"How to write advanced SQL queries"},"content":{"rendered":"<p>In <a href=\"https:\/\/www.dataplatform.gr\/en\/ti-einai-i-sql-kai-ti-mporei-na-kanei\/\" target=\"_blank\" rel=\"noreferrer noopener\">previous article<\/a> we had analyzed what the <strong>SQL<\/strong> (Structured Query Language) and how to use it with basic examples.<\/p>\n\n\n\n<p>In this article we will see its more advanced functions. <\/p>\n\n\n\n<p>The code is written with the extension <a href=\"https:\/\/en.wikipedia.org\/wiki\/Transact-SQL\" target=\"_blank\" rel=\"noreferrer noopener\">Transact-SQL<\/a> used by SQL Server. In other RDBMS the syntax may differ such as e.g. to Oracle that uses it <a href=\"https:\/\/en.wikipedia.org\/wiki\/PL\/SQL\" target=\"_blank\" rel=\"noreferrer noopener\">PL\/SQL<\/a>.<\/p>\n\n\n\n<p>The structure and initial data for our examples is as follows:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">create table pinakas (\nid INT identity (1,1) primary key,\nonoma varchar(100),\ntilefono INT,\nepitheto varchar(100)\n)\n\ninsert into pinakas values \n('Nikos','215294882\u2032,null),\n('Kwstas','210772049\u2032,null),\n('Kwstas','210772049\u2032,null);<\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Correlated subquery&nbsp;<\/h4>\n\n\n\n<p>That<strong> Correlated subquery<\/strong>&nbsp; is the inner subquery that depends on the outer query and compares one record to another record.<\/p>\n\n\n\n<p>We want to update the suffix so that each record is suffixed with the name with _Epi. We will need to declare the table we are calling a second time with another alias name eg (from pinakas as p2) and we will have to set the id from the table to be equal to the same field in the alias of the same table to match line line:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">update pinakas set epitheto = (select onoma+'_Epi' from pinakas as p2 where pinakas.id = p2.id)\n\nselect * from pinakas<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"363\" height=\"214\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/1-adv.png\" alt=\"\" class=\"wp-image-1097\" srcset=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/1-adv.png 363w, https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/1-adv-300x177.png 300w\" sizes=\"auto, (max-width: 363px) 100vw, 363px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Non-correlated subquery&nbsp;<\/h4>\n\n\n\n<p>The <strong>Non-correlated subquery<\/strong>&nbsp; is the subquery that is executed independently of the outer query. The inner subquery is executed first and passes the results to the outer query:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">select * from pinakas where id = (select 4,6,7)<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"363\" height=\"214\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/2-adv.png\" alt=\"\" class=\"wp-image-1098\" srcset=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/2-adv.png 363w, https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/2-adv-300x177.png 300w\" sizes=\"auto, (max-width: 363px) 100vw, 363px\" \/><\/figure>\n\n\n\n<p>After playing with the subquery let&#039;s delete the adjective column with one <strong>drop<\/strong> (dll statement):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">alter table pinakas drop column epitheto\n\nselect * from pinakas<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"365\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/3-jo-1024x365.png\" alt=\"\" class=\"wp-image-1083\" srcset=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/3-jo-1024x365.png 1024w, https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/3-jo-300x107.png 300w, https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/3-jo-768x274.png 768w, https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/3-jo.png 1038w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Case<\/h4>\n\n\n\n<p>Depending on the price of each registration, can we bring something else on a case-by-case basis?<\/p>\n\n\n\n<p>Yes we can, by using it <strong>CASE<\/strong>:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">select \nCASE\n    WHEN onoma = 'Kwstas' THEN 'Kwnstantinos'\n    WHEN onoma ='Nikos'  THEN  'Nikolaos'\n    ELSE 'Asxetos'\nEND AS 'EinaiOdikosMas'\nfrom pinakas<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"218\" height=\"209\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/4-adv.png\" alt=\"\" class=\"wp-image-1100\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Loops<\/h4>\n\n\n\n<p>Through SQL we can call loops like a classic <strong>while<\/strong>. We should declare a variable(@i) and give it a value(set). Finally it should be inside a transaction begin\/end:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">DECLARE @i AS INT\nSET @i=5\nwhile(@i>0)\nBEGIN\n    PRINT('test'+@i)\n    SET @i=@i-1\nEND<\/pre>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\" data-no-auto-translation=\"\"><code>Msg 245, Level 16, State 1, Line 6\nConversion failed when converting the varchar value 'test' to data type int.\nTotal execution time: 00:00:00.001<\/code><\/pre>\n\n\n\n<p>Oops... Something went wrong, what?<\/p>\n\n\n\n<p>Quite simply we tried to join a text with a number by converting the text to a number it doesn&#039;t happen so what do we do?<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Cast<\/h4>\n\n\n\n<p>With the <strong>cast <\/strong>function we can convert any field into a specific data type, e.g. a number field into a text field (as is also done with the T-SQL function <em>convert<\/em>). To solve the error message that appeared to us very simply do <strong>cast<\/strong>&nbsp; the field which is a number in varchar to count as text:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">DECLARE @i AS INT\nSET @i=5\nwhile(@i>0)\nBEGIN\n    PRINT('test'+cast(@i as varchar(2)))\n    SET @i=@i-1\nEND<\/pre>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\" data-no-auto-translation=\"\"><code>test5\ntest4\ntest3\ntest2\ntest1\n\nTotal execution time: 00:00:00.001<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Dynamic Query<\/h4>\n\n\n\n<p>We may well have code in variables and optionally concatenate them and call them as one request. How; With the <strong>Dynamic<\/strong><strong> Query<\/strong>.<\/p>\n\n\n\n<p>We should have defined variables that will contain each piece of code we want, then with the command <strong>EXECUTE<\/strong> and those variables in parentheses will be executed as if it were a complete query.<\/p>\n\n\n\n<p>With print we see how the set of variables will be:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">DECLARE @part1 as VARCHAR(100), @part2 as VARCHAR(100)\nset @part1='SELECT onoma'\nset @part2='from pinakas'\n\nprint(@part1+@part2);\n\nEXECUTE (@part1+@part2)<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"259\" height=\"246\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/5-adv.png\" alt=\"\" class=\"wp-image-1094\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Nested Select<\/h4>\n\n\n\n<p>With the <strong>nested<\/strong><strong> select<\/strong> we can select not from a table or view but from another select. This select can even be from the same table.<\/p>\n\n\n\n<p>Let&#039;s look at an example:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">select onoma from (select onoma,tilefono from pinakas) as nested<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"216\" height=\"229\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/6-adv.png\" alt=\"\" class=\"wp-image-1095\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Common Table Expression or CTE<\/h4>\n\n\n\n<p>When we want a query to remain in memory with high performance as it iterates, returning subsets of data until all of the <strong>CTE<\/strong> it&#039;s the way.<\/p>\n\n\n\n<p>Let&#039;s look at a simple example without much use:<\/p>\n\n\n\n<p>We will define one <strong>CTE<\/strong> named dokimi_cte and we will call it with select in the next command:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">with dokimi_cte\nas\n(select onoma from  pinakas  group by onoma)\n\nselect * from dokimi_cte<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"216\" height=\"190\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/7-adv.png\" alt=\"\" class=\"wp-image-1096\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Cursors<\/h4>\n\n\n\n<p>With <strong>cursors<\/strong> we have the ability to scroll back and forth in the records in order to build a desired result.<\/p>\n\n\n\n<p>In this particular example we wanted to print each name of the table by adding extra text before it.<\/p>\n\n\n\n<p>We will make a cursor named kersoras which will be filled with the entire number of names that the table contains, as long as there are still records it will continue to do action and when it finishes it will go to the next one:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">declare @names varchar(1000)\ndeclare kersoras CURSOR\n\nfor  select onoma from pinakas;\nopen kersoras\nFETCH NEXT FROM kersoras INTO @names\n\nWHILE @@FETCH_STATUS = 0  \nBEGIN  \nprint 'Mr '+@names\nFETCH NEXT FROM kersoras INTO @names  \nEND  \nCLOSE kersoras  \nDEALLOCATE kersoras <\/pre>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\" data-no-auto-translation=\"\"><code>Mr Nikos\n\nMr Kwstas\n\nTotal execution time: 00:00:00.008<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Select into (copy\/backup one table to another)<\/h4>\n\n\n\n<p>With the select into command set we have the possibility to copy the records by creating a new table corresponding to the one we called the data:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">select * into pinakas2 from pinakas\n\nselect * from pinakas2<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"217\" height=\"124\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/8-adv.png\" alt=\"\" class=\"wp-image-1102\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">MERGE<\/h4>\n\n\n\n<p>By command <strong>MERGE <\/strong>we can update a table (target) with values from another table (source).<\/p>\n\n\n\n<p>Let&#039;s say we have the table <strong>pinakas(target) <\/strong>and we want to update the phones with new ones. We also want to bring in new customers if there aren&#039;t any already. The information will be in the table <strong>prosorinos_pinakas(source)<\/strong>.<\/p>\n\n\n\n<p>Let&#039;s look at the tables in detail:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">select * from pinakas<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"208\" height=\"103\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/07\/9_adv.png\" alt=\"\" class=\"wp-image-1698\"\/><figcaption class=\"wp-element-caption\">pinakas (target)<\/figcaption><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">insert into prosorinos_pinakas values \n('Kwstas','690909090'),\n('Giorgos','210555555')\n\nselect * from prosorinos_pinakas <\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"204\" height=\"84\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/07\/10_adv.png\" alt=\"\" class=\"wp-image-1699\"\/><figcaption class=\"wp-element-caption\">prosorinos_pinakas (source)<\/figcaption><\/figure>\n\n\n\n<p>We will use a comparison field the customer&#039;s name, where it matches it will update the phone with the new one (from prosorinos_pinakas), any name it doesn&#039;t find will add the entire record to our original table (pinakas):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">MERGE pinakas t \n    USING prosorinos_pinakas s\nON (s.onoma = t.onoma)\nWHEN MATCHED\n    THEN UPDATE SET \n        t.tilefono = s.tilefono\nWHEN NOT MATCHED BY TARGET \n    THEN INSERT (onoma,tilefono)\n         VALUES (s.onoma,s.tilefono);<\/pre>\n\n\n\n<p>Now if we look at the table again we will have another phone in &#039;Kwstas&#039; and we will have the new customer named &#039;Giorgos&#039; who did not exist:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\" data-no-translation=\"\" data-no-auto-translation=\"\">select * from pinakas<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"212\" height=\"131\" src=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/07\/11_adv.png\" alt=\"\" class=\"wp-image-1700\"\/><\/figure>","protected":false},"excerpt":{"rendered":"<p>In a previous article we analyzed what SQL (Structured Query Language) is and how it is used with basic examples. In this article we will see its more advanced functions. The code is written with the Transact-SQL extension used by SQL Server. In other RDBMS the syntax may differ as [...]<\/p>","protected":false},"author":1,"featured_media":700,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,15],"tags":[29,23,92,61,39,97],"class_list":["post-1092","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-databases","category-ms-sqlserver","tag-databases","tag-microsoft","tag-programming","tag-queries","tag-sql","tag-t-sql"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries - DataPlatform.gr<\/title>\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.dataplatform.gr\/en\/prochorimenes-chriseis-sql-queries\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries - DataPlatform.gr\" \/>\n<meta property=\"og:description\" content=\"\u03a3\u03b5 \u03c0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf \u03ac\u03c1\u03b8\u03c1\u03bf \u03b5\u03af\u03c7\u03b1\u03bc\u03b5 \u03b1\u03bd\u03b1\u03bb\u03cd\u03c3\u03b5\u03b9 \u03c4\u03b9 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b7 SQL (Structured Query Language) \u03ba\u03b1\u03b9 \u03c0\u03c9\u03c2 \u03b3\u03af\u03bd\u03b5\u03c4\u03b1\u03b9 \u03b7 \u03c7\u03c1\u03ae\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03bc\u03b5 \u03b2\u03b1\u03c3\u03b9\u03ba\u03ac \u03c0\u03b1\u03c1\u03b1\u03b4\u03b5\u03af\u03b3\u03bc\u03b1\u03c4\u03b1. \u03a3\u03b5 \u03b1\u03c5\u03c4\u03cc \u03c4\u03bf \u03ac\u03c1\u03b8\u03c1\u03bf \u03b8\u03b1 \u03b4\u03bf\u03cd\u03bc\u03b5 \u03c0\u03b9\u03bf \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b5\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b5\u03c2 \u03c4\u03b7\u03c2. O \u03ba\u03ce\u03b4\u03b9\u03ba\u03b1\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ad\u03bd\u03bf\u03c2 \u03bc\u03b5 \u03c4\u03b7\u03bd \u03c0\u03c1\u03bf\u03ad\u03ba\u03c4\u03b1\u03c3\u03b7 Transact-SQL \u03c0\u03bf\u03c5 \u03b3\u03af\u03bd\u03b5\u03c4\u03b1\u03b9 \u03c7\u03c1\u03ae\u03c3\u03b7 \u03b1\u03c0\u03cc \u03c3\u03c4\u03bf\u03bd SQL Server. \u03a3\u03b5 \u03ac\u03bb\u03bb\u03b1 RDBMS \u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7 \u03b5\u03bd\u03b4\u03ad\u03c7\u03b5\u03c4\u03b1\u03b9 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03c6\u03ad\u03c1\u03b5\u03b9 \u03cc\u03c0\u03c9\u03c2 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dataplatform.gr\/en\/prochorimenes-chriseis-sql-queries\/\" \/>\n<meta property=\"og:site_name\" content=\"DataPlatform.gr\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/dataplatform.gr\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-09-03T04:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-04-30T10:29:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/dp_sql.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Stratos Matzouranis\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Stratos Matzouranis\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/\"},\"author\":{\"name\":\"Stratos Matzouranis\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#\\\/schema\\\/person\\\/e87bf4fd02b65cb6aa0942f87245bbaf\"},\"headline\":\"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries\",\"datePublished\":\"2020-09-03T04:00:00+00:00\",\"dateModified\":\"2025-04-30T10:29:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/\"},\"wordCount\":135,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dataplatform.gr\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/dp_sql.png\",\"keywords\":[\"Databases\",\"Microsoft\",\"Programming\",\"Queries\",\"SQL\",\"T-SQL\"],\"articleSection\":[\"Databases\",\"Microsoft SQL Server\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/\",\"url\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/\",\"name\":\"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries - DataPlatform.gr\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dataplatform.gr\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/dp_sql.png\",\"datePublished\":\"2020-09-03T04:00:00+00:00\",\"dateModified\":\"2025-04-30T10:29:37+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dataplatform.gr\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/dp_sql.png\",\"contentUrl\":\"https:\\\/\\\/www.dataplatform.gr\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/dp_sql.png\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/prochorimenes-chriseis-sql-queries\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u0391\u03c1\u03c7\u03b9\u03ba\u03ae\",\"item\":\"https:\\\/\\\/www.dataplatform.gr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Databases\",\"item\":\"https:\\\/\\\/www.dataplatform.gr\\\/category\\\/databases\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#website\",\"url\":\"https:\\\/\\\/www.dataplatform.gr\\\/\",\"name\":\"dataplatform.gr - Sky is not the limit!\",\"description\":\"\u0398\u03b5\u03c9\u03c1\u03af\u03b1, \u03bf\u03b4\u03b7\u03b3\u03bf\u03af \u03ba\u03b1\u03b9 \u03c3\u03ba\u03ad\u03c8\u03b5\u03b9\u03c2 \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03ba\u03ac\u03bd\u03b5\u03c4\u03b5 \u03c4\u03b7 \u03b4\u03bf\u03c5\u03bb\u03b5\u03b9\u03ac \u03c3\u03b1\u03c2 \u03c0\u03b9\u03bf \u03c0\u03b1\u03c1\u03b1\u03b3\u03c9\u03b3\u03b9\u03ba\u03ac \u03ba\u03b1\u03b9 \u03c0\u03b9\u03bf \u03b5\u03cd\u03ba\u03bf\u03bb\u03b1 \u03c0\u03ac\u03bd\u03c9 \u03c3\u03c4\u03b9\u03c2 \u03b2\u03ac\u03c3\u03b5\u03b9\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd, \u03c3\u03c4\u03b7\u03bd SQL, \u03c3\u03c4\u03bf Business Intelligence \u03ba\u03b1\u03b9 \u03c3\u03c4\u03b1 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03b1 \u03b3\u03b5\u03bd\u03b9\u03ba\u03cc\u03c4\u03b5\u03c1\u03b1.\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dataplatform.gr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#organization\",\"name\":\"dataplatform.gr\",\"url\":\"https:\\\/\\\/www.dataplatform.gr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.dataplatform.gr\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/dp_logo_wbacki.png\",\"contentUrl\":\"https:\\\/\\\/www.dataplatform.gr\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/dp_logo_wbacki.png\",\"width\":322,\"height\":139,\"caption\":\"dataplatform.gr\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/dataplatform.gr\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/dataplatform-gr\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dataplatform.gr\\\/#\\\/schema\\\/person\\\/e87bf4fd02b65cb6aa0942f87245bbaf\",\"name\":\"Stratos Matzouranis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ab973bc4bd1673c43d45de5633a624d9ad13c06902dfdd5a6e3fd9885903865e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ab973bc4bd1673c43d45de5633a624d9ad13c06902dfdd5a6e3fd9885903865e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ab973bc4bd1673c43d45de5633a624d9ad13c06902dfdd5a6e3fd9885903865e?s=96&d=mm&r=g\",\"caption\":\"Stratos Matzouranis\"},\"sameAs\":[\"https:\\\/\\\/www.dataplatform.gr\"],\"url\":\"https:\\\/\\\/www.dataplatform.gr\\\/en\\\/author\\\/stratos-matzouranis\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries - DataPlatform.gr","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.dataplatform.gr\/en\/prochorimenes-chriseis-sql-queries\/","og_locale":"en_US","og_type":"article","og_title":"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries - DataPlatform.gr","og_description":"\u03a3\u03b5 \u03c0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf \u03ac\u03c1\u03b8\u03c1\u03bf \u03b5\u03af\u03c7\u03b1\u03bc\u03b5 \u03b1\u03bd\u03b1\u03bb\u03cd\u03c3\u03b5\u03b9 \u03c4\u03b9 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b7 SQL (Structured Query Language) \u03ba\u03b1\u03b9 \u03c0\u03c9\u03c2 \u03b3\u03af\u03bd\u03b5\u03c4\u03b1\u03b9 \u03b7 \u03c7\u03c1\u03ae\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03bc\u03b5 \u03b2\u03b1\u03c3\u03b9\u03ba\u03ac \u03c0\u03b1\u03c1\u03b1\u03b4\u03b5\u03af\u03b3\u03bc\u03b1\u03c4\u03b1. \u03a3\u03b5 \u03b1\u03c5\u03c4\u03cc \u03c4\u03bf \u03ac\u03c1\u03b8\u03c1\u03bf \u03b8\u03b1 \u03b4\u03bf\u03cd\u03bc\u03b5 \u03c0\u03b9\u03bf \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b5\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b5\u03c2 \u03c4\u03b7\u03c2. O \u03ba\u03ce\u03b4\u03b9\u03ba\u03b1\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ad\u03bd\u03bf\u03c2 \u03bc\u03b5 \u03c4\u03b7\u03bd \u03c0\u03c1\u03bf\u03ad\u03ba\u03c4\u03b1\u03c3\u03b7 Transact-SQL \u03c0\u03bf\u03c5 \u03b3\u03af\u03bd\u03b5\u03c4\u03b1\u03b9 \u03c7\u03c1\u03ae\u03c3\u03b7 \u03b1\u03c0\u03cc \u03c3\u03c4\u03bf\u03bd SQL Server. \u03a3\u03b5 \u03ac\u03bb\u03bb\u03b1 RDBMS \u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7 \u03b5\u03bd\u03b4\u03ad\u03c7\u03b5\u03c4\u03b1\u03b9 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03c6\u03ad\u03c1\u03b5\u03b9 \u03cc\u03c0\u03c9\u03c2 [&hellip;]","og_url":"https:\/\/www.dataplatform.gr\/en\/prochorimenes-chriseis-sql-queries\/","og_site_name":"DataPlatform.gr","article_publisher":"https:\/\/www.facebook.com\/dataplatform.gr\/","article_published_time":"2020-09-03T04:00:00+00:00","article_modified_time":"2025-04-30T10:29:37+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/dp_sql.png","type":"image\/png"}],"author":"Stratos Matzouranis","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Stratos Matzouranis","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/#article","isPartOf":{"@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/"},"author":{"name":"Stratos Matzouranis","@id":"https:\/\/www.dataplatform.gr\/#\/schema\/person\/e87bf4fd02b65cb6aa0942f87245bbaf"},"headline":"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries","datePublished":"2020-09-03T04:00:00+00:00","dateModified":"2025-04-30T10:29:37+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/"},"wordCount":135,"commentCount":0,"publisher":{"@id":"https:\/\/www.dataplatform.gr\/#organization"},"image":{"@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/dp_sql.png","keywords":["Databases","Microsoft","Programming","Queries","SQL","T-SQL"],"articleSection":["Databases","Microsoft SQL Server"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/","url":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/","name":"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries - DataPlatform.gr","isPartOf":{"@id":"https:\/\/www.dataplatform.gr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/#primaryimage"},"image":{"@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/dp_sql.png","datePublished":"2020-09-03T04:00:00+00:00","dateModified":"2025-04-30T10:29:37+00:00","breadcrumb":{"@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/#primaryimage","url":"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/dp_sql.png","contentUrl":"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/dp_sql.png","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/www.dataplatform.gr\/prochorimenes-chriseis-sql-queries\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u0391\u03c1\u03c7\u03b9\u03ba\u03ae","item":"https:\/\/www.dataplatform.gr\/"},{"@type":"ListItem","position":2,"name":"Databases","item":"https:\/\/www.dataplatform.gr\/category\/databases\/"},{"@type":"ListItem","position":3,"name":"\u03a0\u03ce\u03c2 \u03b3\u03c1\u03ac\u03c6\u03bf\u03c5\u03bc\u03b5 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03b1 SQL queries"}]},{"@type":"WebSite","@id":"https:\/\/www.dataplatform.gr\/#website","url":"https:\/\/www.dataplatform.gr\/","name":"dataplatform.gr - Sky is not the limit!","description":"\u0398\u03b5\u03c9\u03c1\u03af\u03b1, \u03bf\u03b4\u03b7\u03b3\u03bf\u03af \u03ba\u03b1\u03b9 \u03c3\u03ba\u03ad\u03c8\u03b5\u03b9\u03c2 \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03ba\u03ac\u03bd\u03b5\u03c4\u03b5 \u03c4\u03b7 \u03b4\u03bf\u03c5\u03bb\u03b5\u03b9\u03ac \u03c3\u03b1\u03c2 \u03c0\u03b9\u03bf \u03c0\u03b1\u03c1\u03b1\u03b3\u03c9\u03b3\u03b9\u03ba\u03ac \u03ba\u03b1\u03b9 \u03c0\u03b9\u03bf \u03b5\u03cd\u03ba\u03bf\u03bb\u03b1 \u03c0\u03ac\u03bd\u03c9 \u03c3\u03c4\u03b9\u03c2 \u03b2\u03ac\u03c3\u03b5\u03b9\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd, \u03c3\u03c4\u03b7\u03bd SQL, \u03c3\u03c4\u03bf Business Intelligence \u03ba\u03b1\u03b9 \u03c3\u03c4\u03b1 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03b1 \u03b3\u03b5\u03bd\u03b9\u03ba\u03cc\u03c4\u03b5\u03c1\u03b1.","publisher":{"@id":"https:\/\/www.dataplatform.gr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dataplatform.gr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.dataplatform.gr\/#organization","name":"dataplatform.gr","url":"https:\/\/www.dataplatform.gr\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dataplatform.gr\/#\/schema\/logo\/image\/","url":"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/dp_logo_wbacki.png","contentUrl":"https:\/\/www.dataplatform.gr\/wp-content\/uploads\/2020\/06\/dp_logo_wbacki.png","width":322,"height":139,"caption":"dataplatform.gr"},"image":{"@id":"https:\/\/www.dataplatform.gr\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/dataplatform.gr\/","https:\/\/www.linkedin.com\/company\/dataplatform-gr\/"]},{"@type":"Person","@id":"https:\/\/www.dataplatform.gr\/#\/schema\/person\/e87bf4fd02b65cb6aa0942f87245bbaf","name":"Stratos Matzouranis","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/ab973bc4bd1673c43d45de5633a624d9ad13c06902dfdd5a6e3fd9885903865e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/ab973bc4bd1673c43d45de5633a624d9ad13c06902dfdd5a6e3fd9885903865e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ab973bc4bd1673c43d45de5633a624d9ad13c06902dfdd5a6e3fd9885903865e?s=96&d=mm&r=g","caption":"Stratos Matzouranis"},"sameAs":["https:\/\/www.dataplatform.gr"],"url":"https:\/\/www.dataplatform.gr\/en\/author\/stratos-matzouranis\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/posts\/1092","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/comments?post=1092"}],"version-history":[{"count":2,"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/posts\/1092\/revisions"}],"predecessor-version":[{"id":5703,"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/posts\/1092\/revisions\/5703"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/media\/700"}],"wp:attachment":[{"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/media?parent=1092"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/categories?post=1092"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dataplatform.gr\/en\/wp-json\/wp\/v2\/tags?post=1092"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}