<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>SQL Server (και άλλες databases)</title><link>https://www.dotnetzone.gr:443/cs/forums/28/ShowForum.aspx</link><description>Θέματα που αφορούν τον SQL Server (7.0, 2000, 2005) αλλά και Oracle, Access, DB2, MySQL, κλπ.</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68931.aspx</link><pubDate>Sun, 15 Jan 2012 17:43:59 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68931</guid><dc:creator>Firebrand</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68931.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68931</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://www.dotnetzone.gr/cs/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Markos:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;Συγγνώμη για την καθυστέρηση, αλλά εγκατέλειψα τον υπολογιστή αμέσως μετά το τελευταίο post.&lt;br&gt;&lt;br&gt;Λοιπόν, δημιούργησα μια βάση δεδομένων (Parents) κι έναν πίνακα με ονομασία Children και τα εξής δεδομένα (δεν ξέρω πως θα βγει στη μορφοποίηση):&lt;br&gt;&lt;br&gt;ID&amp;nbsp; ParentID&amp;nbsp;&amp;nbsp;&amp;nbsp; ChildID&amp;nbsp;&amp;nbsp;&amp;nbsp; Char1&amp;nbsp;&amp;nbsp;&amp;nbsp; Char2&amp;nbsp;&amp;nbsp;&amp;nbsp; Char3&amp;nbsp;&amp;nbsp;&amp;nbsp; Char4&lt;br&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; T&amp;nbsp;&amp;nbsp;&amp;nbsp; Y&lt;br&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; Ο&amp;nbsp;&amp;nbsp;&amp;nbsp; Π&lt;br&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; G&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; Ξ&amp;nbsp;&amp;nbsp;&amp;nbsp; Κ&lt;br&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; Λ&amp;nbsp;&amp;nbsp;&amp;nbsp; Μ&lt;br&gt;5&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; E&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp; Η&amp;nbsp;&amp;nbsp;&amp;nbsp; Θ&lt;br&gt;6&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; F&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp; Ν&amp;nbsp;&amp;nbsp;&amp;nbsp; Δ&lt;br&gt;&lt;br&gt;Το ID του πίνακα είναι int - autoincrement. Ιδού και το script:&lt;br&gt;&lt;br&gt;&lt;table style="background-color:#f2f2f2;border:solid 1px #e5e5e5;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;USE&lt;/span&gt; [Parents]
GO

&lt;span style="color:Teal;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;/****** Object:  Table [dbo].[Children]    Script Date: 01/15/2012 03:02:53 ******/&lt;/span&gt;
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SET&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ANSI_NULLS&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;
GO

&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SET&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;QUOTED_IDENTIFIER&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;
GO

&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;CREATE&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;TABLE&lt;/span&gt; [dbo].[Children](
	[ID] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;int&lt;/span&gt;] &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;IDENTITY&lt;/span&gt;(1,1) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[ParentID] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;int&lt;/span&gt;] &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[ChildID] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[Char1] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[Char2] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[Char3] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[Char4] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;CONSTRAINT&lt;/span&gt; [PK_Children] &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PRIMARY&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;KEY&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;CLUSTERED&lt;/span&gt; 
(
	[ID] &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ASC&lt;/span&gt;
)&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;WITH&lt;/span&gt; (PAD_INDEX  = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;OFF&lt;/span&gt;, STATISTICS_NORECOMPUTE  = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;OFF&lt;/span&gt;, IGNORE_DUP_KEY = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;OFF&lt;/span&gt;, ALLOW_ROW_LOCKS  = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;, ALLOW_PAGE_LOCKS  = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;) &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt; [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PRIMARY&lt;/span&gt;]
) &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt; [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PRIMARY&lt;/span&gt;]

GO&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;&lt;br&gt;Αυτό που θες μπορεί να επιτευχθεί σε δύο joins. Το πρώτο το ονόμασα FirstInnerJoin και είναι το:&lt;br&gt;&lt;br&gt;&lt;table style="background-color:#f2f2f2;border:solid 1px #e5e5e5;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
5
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SELECT&lt;/span&gt;     dbo.Children.ID, dbo.Children.ParentID, dbo.Children.ChildID &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Child1, dbo.Children.Char1, dbo.Children.Char2, Children_1.ChildID &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Child2, Children_1.Char3, 
                      Children_1.Char4
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;FROM&lt;/span&gt;         dbo.Children &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INNER&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;JOIN&lt;/span&gt;
                      dbo.Children &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Children_1 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt; dbo.Children.ParentID = Children_1.ParentID &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; dbo.Children.Char1 = Children_1.Char1 &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; 
                      dbo.Children.Char2 = Children_1.Char2 &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; dbo.Children.ChildID &amp;lt;&amp;gt; Children_1.ChildID &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; dbo.Children.ID &amp;lt; Children_1.ID&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;Το αποτέλεσμα αυτού του Join είναι:&lt;br&gt;&lt;br&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; Ο&amp;nbsp;&amp;nbsp;&amp;nbsp; Π&lt;br&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; G&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp; Λ&amp;nbsp;&amp;nbsp;&amp;nbsp; Μ&lt;br&gt;5&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; E&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp; F&amp;nbsp;&amp;nbsp;&amp;nbsp; Ν&amp;nbsp;&amp;nbsp;&amp;nbsp; Δ&lt;br&gt;&lt;br&gt;Κοντά σ' αυτό που θέλεις, αλλά όχι ακριβώς. Το παρακάτω statement μου δίνει αυτό που ζητάς. Πρόκειται για Join ανάμεσα στον πίνακα Children και στο View FirstInnerJoin:&lt;br&gt;&lt;br&gt;&lt;table style="background-color:#f2f2f2;border:solid 1px #e5e5e5;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SELECT&lt;/span&gt;     dbo.Children.ParentID, dbo.Children.ChildID, dbo.Children.Char1, dbo.Children.Char2, dbo.Children.Char3, dbo.Children.Char4, dbo.FirstInnerJoin.Child2, 
                      dbo.FirstInnerJoin.Char3 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Char3_2, dbo.FirstInnerJoin.Char4 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Char4_2
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;FROM&lt;/span&gt;         dbo.Children &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INNER&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;JOIN&lt;/span&gt;
                      dbo.FirstInnerJoin &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt; dbo.Children.ParentID = dbo.FirstInnerJoin.ParentID &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; dbo.Children.ChildID = dbo.FirstInnerJoin.Child1&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;Από την εκτέλεσή του παίρνω:&lt;br&gt;&lt;br&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; T&amp;nbsp;&amp;nbsp;&amp;nbsp; Y&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; Ο&amp;nbsp;&amp;nbsp;&amp;nbsp; Π&lt;br&gt;7&amp;nbsp;&amp;nbsp;&amp;nbsp; G&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; Ξ&amp;nbsp;&amp;nbsp;&amp;nbsp; Κ&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp; Λ&amp;nbsp;&amp;nbsp;&amp;nbsp; Μ&lt;br&gt;7&amp;nbsp;&amp;nbsp;&amp;nbsp; E&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp; Η&amp;nbsp;&amp;nbsp;&amp;nbsp; Θ&amp;nbsp;&amp;nbsp;&amp;nbsp; F&amp;nbsp;&amp;nbsp;&amp;nbsp; Ν&amp;nbsp;&amp;nbsp;&amp;nbsp; Δ&lt;br&gt;&lt;br&gt;Δούλεψα με T-SQL για δική μου ευκολία. Νομίζω ότι δεν θα έχεις πρόβλημα να το μετατρέψεις σε Sqlite. Αν θέλεις, μετέφερε τα δεδομένα σου σε Sql Server για να ελέγξεις τα queries και αν δεις ότι σου κάνουν, προχωράς στη μετατροπή.&lt;br&gt;&lt;br&gt;Επίσης, αν κάτι μου έχει ξεφύγει στο copy - paste, κάνε ένα post...&lt;br&gt;&lt;br&gt;[EDIT] Έχω την εντύπωση ότι μπορεί να γίνει και ένα query, αλλά αυτήν την ώρα δεν έχω καθαρό μυαλό για να το "ζαλίσω" περισσότερο...&lt;br&gt;&lt;br&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;&lt;br&gt;Ειλικρινά παιδευούμουν 10 μέρες τώρα και δεν έβρισκα άκρη.&lt;br&gt;ΧΙΛΙΑ ΕΥΧΑΡΙΣΤΩ!&lt;br&gt;Πείραξα λίγο το πρώτο query και έβγαλα ακριβώς αυτά που ήθελα.&lt;br&gt;</description></item><item><title>Απ: Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68930.aspx</link><pubDate>Sun, 15 Jan 2012 11:07:28 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68930</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68930.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68930</wfw:commentRss><description>Συγγνώμη για την καθυστέρηση, αλλά εγκατέλειψα τον υπολογιστή αμέσως μετά το τελευταίο post.&lt;br&gt;&lt;br&gt;Λοιπόν, δημιούργησα μια βάση δεδομένων (Parents) κι έναν πίνακα με ονομασία Children και τα εξής δεδομένα (δεν ξέρω πως θα βγει στη μορφοποίηση):&lt;br&gt;&lt;br&gt;ID&amp;nbsp; ParentID&amp;nbsp;&amp;nbsp;&amp;nbsp; ChildID&amp;nbsp;&amp;nbsp;&amp;nbsp; Char1&amp;nbsp;&amp;nbsp;&amp;nbsp; Char2&amp;nbsp;&amp;nbsp;&amp;nbsp; Char3&amp;nbsp;&amp;nbsp;&amp;nbsp; Char4&lt;br&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; T&amp;nbsp;&amp;nbsp;&amp;nbsp; Y&lt;br&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; Ο&amp;nbsp;&amp;nbsp;&amp;nbsp; Π&lt;br&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; G&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; Ξ&amp;nbsp;&amp;nbsp;&amp;nbsp; Κ&lt;br&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; Λ&amp;nbsp;&amp;nbsp;&amp;nbsp; Μ&lt;br&gt;5&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; E&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp; Η&amp;nbsp;&amp;nbsp;&amp;nbsp; Θ&lt;br&gt;6&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; F&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp; Ν&amp;nbsp;&amp;nbsp;&amp;nbsp; Δ&lt;br&gt;&lt;br&gt;Το ID του πίνακα είναι int - autoincrement. Ιδού και το script:&lt;br&gt;&lt;br&gt;&lt;table style="background-color:#f2f2f2;border:solid 1px #e5e5e5;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;USE&lt;/span&gt; [Parents]
GO

&lt;span style="color:Teal;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;/****** Object:  Table [dbo].[Children]    Script Date: 01/15/2012 03:02:53 ******/&lt;/span&gt;
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SET&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ANSI_NULLS&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;
GO

&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SET&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;QUOTED_IDENTIFIER&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;
GO

&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;CREATE&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;TABLE&lt;/span&gt; [dbo].[Children](
	[ID] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;int&lt;/span&gt;] &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;IDENTITY&lt;/span&gt;(1,1) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[ParentID] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;int&lt;/span&gt;] &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[ChildID] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[Char1] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[Char2] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[Char3] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
	[Char4] [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;](2) &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NOT&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;NULL&lt;/span&gt;,
 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;CONSTRAINT&lt;/span&gt; [PK_Children] &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PRIMARY&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;KEY&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;CLUSTERED&lt;/span&gt; 
(
	[ID] &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ASC&lt;/span&gt;
)&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;WITH&lt;/span&gt; (PAD_INDEX  = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;OFF&lt;/span&gt;, STATISTICS_NORECOMPUTE  = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;OFF&lt;/span&gt;, IGNORE_DUP_KEY = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;OFF&lt;/span&gt;, ALLOW_ROW_LOCKS  = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;, ALLOW_PAGE_LOCKS  = &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;) &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt; [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PRIMARY&lt;/span&gt;]
) &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt; [&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PRIMARY&lt;/span&gt;]

GO&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;&lt;br&gt;Αυτό που θες μπορεί να επιτευχθεί σε δύο joins. Το πρώτο το ονόμασα FirstInnerJoin και είναι το:&lt;br&gt;&lt;br&gt;&lt;table style="background-color:#f2f2f2;border:solid 1px #e5e5e5;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
5
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SELECT&lt;/span&gt;     dbo.Children.ID, dbo.Children.ParentID, dbo.Children.ChildID &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Child1, dbo.Children.Char1, dbo.Children.Char2, Children_1.ChildID &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Child2, Children_1.Char3, 
                      Children_1.Char4
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;FROM&lt;/span&gt;         dbo.Children &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INNER&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;JOIN&lt;/span&gt;
                      dbo.Children &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Children_1 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt; dbo.Children.ParentID = Children_1.ParentID &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; dbo.Children.Char1 = Children_1.Char1 &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; 
                      dbo.Children.Char2 = Children_1.Char2 &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; dbo.Children.ChildID &amp;lt;&amp;gt; Children_1.ChildID &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; dbo.Children.ID &amp;lt; Children_1.ID&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;Το αποτέλεσμα αυτού του Join είναι:&lt;br&gt;&lt;br&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; Ο&amp;nbsp;&amp;nbsp;&amp;nbsp; Π&lt;br&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; G&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp; Λ&amp;nbsp;&amp;nbsp;&amp;nbsp; Μ&lt;br&gt;5&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp; E&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp; F&amp;nbsp;&amp;nbsp;&amp;nbsp; Ν&amp;nbsp;&amp;nbsp;&amp;nbsp; Δ&lt;br&gt;&lt;br&gt;Κοντά σ' αυτό που θέλεις, αλλά όχι ακριβώς. Το παρακάτω statement μου δίνει αυτό που ζητάς. Πρόκειται για Join ανάμεσα στον πίνακα Children και στο View FirstInnerJoin:&lt;br&gt;&lt;br&gt;&lt;table style="background-color:#f2f2f2;border:solid 1px #e5e5e5;" border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="font-family:courier new;font-size:11px;color:gray;margin:0px;padding:2px;border-right:solid 1px #e7e7e7;"&gt;1
2
3
4
 &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px;padding-left:8px;"&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SELECT&lt;/span&gt;     dbo.Children.ParentID, dbo.Children.ChildID, dbo.Children.Char1, dbo.Children.Char2, dbo.Children.Char3, dbo.Children.Char4, dbo.FirstInnerJoin.Child2, 
                      dbo.FirstInnerJoin.Char3 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Char3_2, dbo.FirstInnerJoin.Char4 &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt; Char4_2
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;FROM&lt;/span&gt;         dbo.Children &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INNER&lt;/span&gt; &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;JOIN&lt;/span&gt;
                      dbo.FirstInnerJoin &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt; dbo.Children.ParentID = dbo.FirstInnerJoin.ParentID &lt;span style="color:Silver;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AND&lt;/span&gt; dbo.Children.ChildID = dbo.FirstInnerJoin.Child1&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;Από την εκτέλεσή του παίρνω:&lt;br&gt;&lt;br&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; T&amp;nbsp;&amp;nbsp;&amp;nbsp; Y&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; Ο&amp;nbsp;&amp;nbsp;&amp;nbsp; Π&lt;br&gt;7&amp;nbsp;&amp;nbsp;&amp;nbsp; G&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; Ξ&amp;nbsp;&amp;nbsp;&amp;nbsp; Κ&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp; Λ&amp;nbsp;&amp;nbsp;&amp;nbsp; Μ&lt;br&gt;7&amp;nbsp;&amp;nbsp;&amp;nbsp; E&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp; Η&amp;nbsp;&amp;nbsp;&amp;nbsp; Θ&amp;nbsp;&amp;nbsp;&amp;nbsp; F&amp;nbsp;&amp;nbsp;&amp;nbsp; Ν&amp;nbsp;&amp;nbsp;&amp;nbsp; Δ&lt;br&gt;&lt;br&gt;Δούλεψα με T-SQL για δική μου ευκολία. Νομίζω ότι δεν θα έχεις πρόβλημα να το μετατρέψεις σε Sqlite. Αν θέλεις, μετέφερε τα δεδομένα σου σε Sql Server για να ελέγξεις τα queries και αν δεις ότι σου κάνουν, προχωράς στη μετατροπή.&lt;br&gt;&lt;br&gt;Επίσης, αν κάτι μου έχει ξεφύγει στο copy - paste, κάνε ένα post...&lt;br&gt;&lt;br&gt;[EDIT] Έχω την εντύπωση ότι μπορεί να γίνει και ένα query, αλλά αυτήν την ώρα δεν έχω καθαρό μυαλό για να το "ζαλίσω" περισσότερο...&lt;br&gt;&lt;br&gt;</description></item><item><title>Απ: Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68927.aspx</link><pubDate>Sun, 15 Jan 2012 07:34:08 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68927</guid><dc:creator>Firebrand</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68927.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68927</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://www.dotnetzone.gr/cs/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Markos:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;Με βάση αυτά που γράφεις θα πρέπει να κάνεις ένα &lt;a href="http://msdn.microsoft.com/en-us/library/ms177490%28v=SQL.100%29.aspx"&gt;self join&lt;/a&gt; ως προς το parentID και τα characteristics 1 και 2.&lt;br&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;&lt;br&gt;Μπορείς να το εξηγήσεις λίγο. Δεν μπόρεσα να βγάλω άκρη.&lt;br&gt;&lt;br&gt;Ευχαριστώ&lt;br&gt;</description></item><item><title>Απ: Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68926.aspx</link><pubDate>Sun, 15 Jan 2012 06:33:21 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68926</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68926.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68926</wfw:commentRss><description>Με βάση αυτά που γράφεις θα πρέπει να κάνεις ένα &lt;a href="http://msdn.microsoft.com/en-us/library/ms177490%28v=SQL.100%29.aspx"&gt;self join&lt;/a&gt; ως προς το parentID και τα characteristics 1 και 2.&lt;br&gt;</description></item><item><title>Απ: Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68925.aspx</link><pubDate>Sun, 15 Jan 2012 06:19:55 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68925</guid><dc:creator>Firebrand</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68925.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68925</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://www.dotnetzone.gr/cs/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Markos:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;Ας πάρουμε την περίπτωση:&lt;br&gt;&lt;br&gt;1,Α,2,3,Τ,Υ&lt;br&gt;1,Β,2,3,Ο,Π&lt;br&gt;&lt;br&gt;(EDIT)&lt;br&gt;Αποκλείεται τον συνδυασμό χαρακτηριστικών (2,3) να τον έχει και κάποιο άλλο τέκνο του γονέα 1; Ο κάθε γονέας έχει ΑΚΡΙΒΩΣ δύο τέκνα ή κάποια δύναμη του 2; Π.χ. 2, 4, 8, 16 κ.λ.; Τι θα συμβεί με το query σου αν έχει, για παράδειγμα, 1 ή περιττό αρθμό παιδιών; Επίσης, από τη στιγμή που έχει μόνο ένα ParentID ενδέχεται το τέκνο (και τα χαρακτηριστικά του) να είναι καταχωρημένο δύο φορές. Μία με το ParentID του πατέρα και μία με το ParentID της μητέρας. &lt;b&gt;Big Trouble&lt;/b&gt;!!&lt;br&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;&lt;br&gt;Πάντα υπολόγιζε έναν parent είτε μόνο μητέρα είτε μόνο πατέρα.&lt;br&gt;Επίσης ο αριθμός των παιδιών είναι πάντα ζυγός (de facto).&lt;br&gt;Τώρα το γιατί πάμε με αυτή τη λογική είναι άλλο παραμύθι.&lt;br&gt;&lt;br&gt;Επίσης κάθε παιδί, όπως βλέπεις και απο το παράδειγμα έχει ακριβώς τα ίδια χαρακτηριστικά για το Characteristic1 και 2.&lt;br&gt;Αλλάζουν μόνο τα 3 και 4.&lt;br&gt;&lt;br&gt;Υπάρχει όμως η περίπτωση όπου για το ίδιο parent και διαφορετικά παιδιά τα χαρακτηριστικά 1 και 2 να είναι ίδια π.χ.&lt;br&gt;&lt;br&gt;5,Τ,4,5,Θ,Ι&lt;br&gt;5,Υ,4,5,Ο,Π&lt;br&gt;&lt;br&gt;Άρχισε να ξεκαθαρίζει λίγο....;&lt;br&gt;</description></item><item><title>Απ: Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68922.aspx</link><pubDate>Sun, 15 Jan 2012 06:06:58 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68922</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68922.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68922</wfw:commentRss><description>Ας πάρουμε την περίπτωση:&lt;br&gt;&lt;br&gt;1,Α,2,3,Τ,Υ&lt;br&gt;1,Β,2,3,Ο,Π&lt;br&gt;&lt;br&gt;(EDIT)&lt;br&gt;Αποκλείεται τον συνδυασμό χαρακτηριστικών (2,3) να τον έχει και κάποιο άλλο τέκνο του γονέα 1; Ο κάθε γονέας έχει ΑΚΡΙΒΩΣ δύο τέκνα ή κάποια δύναμη του 2; Π.χ. 2, 4, 8, 16 κ.λ.; Τι θα συμβεί με το query σου αν έχει, για παράδειγμα, 1 ή περιττό αρθμό παιδιών; Επίσης, από τη στιγμή που έχει μόνο ένα ParentID ενδέχεται το τέκνο (και τα χαρακτηριστικά του) να είναι καταχωρημένο δύο φορές. Μία με το ParentID του πατέρα και μία με το ParentID της μητέρας. &lt;b&gt;Big Trouble&lt;/b&gt;!!&lt;br&gt;</description></item><item><title>Απ: Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68921.aspx</link><pubDate>Sun, 15 Jan 2012 05:59:36 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68921</guid><dc:creator>Firebrand</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68921.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68921</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://www.dotnetzone.gr/cs/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Markos:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;Έτσι όπως έχεις σχεδιάσει τον πίνακα θα έχεις προβλήματα. Πρώτα - πρώτα, το κάθε παιδί έχει δύο γονείς. Ο πίνακας "Parent" πρέπει να σπάσει σε δύο ("Father", "Mother"), οι οποίοι ενδεχομένως να κληρονομούν πεδία από κάποιον πίνακα "Person". Ο πίνακας "Children" πρέπει να έχει πεδία FatherID, MontherID, ChildID. Για τα χαρακτηριστικά πρέπει να φτιάξεις τρίτο πίνακα "Characteristics" με τα αντίστοιχες στήλες ID και Description. Η σχέση Children προς Characteristics πρέπει να είναι many to many. Αν εξαρχής υπάρχουν χαρακτηριστικά για τα οποία σ' ενδιαφέρει ο συνδυασμός, ή θα πρέπει να τα ορίσεις σαν "ένα" χαρακτηριστικό (για απλοποίηση) ή θα πρέπει να δημιουργήσεις κι άλλον πίνακα που θα συμπεριλαμβάνει αυτούς τους συνδυασμούς. Πιστεύω ότι θα είμαι σε θέση να σου απαντήσω καλύτερα αν θελήσεις να γίνει πιο συγκεκριμένος. Πάντως, έτσι όπως το έχεις σχεδιάσει πολλά πράγματα θα πάνε στραβά. Δεν απαντώ ευθέως στο ερώτημά σου γιατί δεν σου κρύβω ότι από την περιγραφή που έχεις κάνει δεν έχω καταλάβει και πολλά πράγματα.&lt;br&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;&lt;br&gt;Δεν γίνεται να αλλάξη η δομή.&lt;br&gt;Για την ώρα ασχολούμε μόνο με τον ένα parent και μέσα στον συγκεκριμένο πίνακα.&lt;br&gt;Δυστυχώς δεν είναι στο χέρι μου να αλλάξω τη δομή και έτσι από αυτόν τον πίνακα προσπαθώ να τραβήξω τα δεδομένα.&lt;br&gt;&lt;br&gt;Για να σε βοηθήσω να με βοηθήσεις τι περισσότερο χρειάζεσαι σαν πληροφορία; Δεν έχω κάτι περισσότερο. Ακόμα και τα δεδομένα απλά θα πάρουν πραγματικες τιμές αλλά στην ουσία δεν αλλάζει κάτι.&lt;br&gt;Σκέψου ότι αυτός είναι ο πίνακας και δεν αλλάζει.&lt;br&gt;</description></item><item><title>Απ: Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68920.aspx</link><pubDate>Sun, 15 Jan 2012 05:47:21 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68920</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68920.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68920</wfw:commentRss><description>Έτσι όπως έχεις σχεδιάσει τον πίνακα θα έχεις προβλήματα. Πρώτα - πρώτα, το κάθε παιδί έχει δύο γονείς. Ο πίνακας "Parent" πρέπει να σπάσει σε δύο ("Father", "Mother"), οι οποίοι ενδεχομένως να κληρονομούν πεδία από κάποιον πίνακα "Person". Ο πίνακας "Children" πρέπει να έχει πεδία FatherID, MontherID, ChildID. Για τα χαρακτηριστικά πρέπει να φτιάξεις τρίτο πίνακα "Characteristics" με τα αντίστοιχες στήλες ID και Description. Η σχέση Children προς Characteristics πρέπει να είναι many to many. Αν εξαρχής υπάρχουν χαρακτηριστικά για τα οποία σ' ενδιαφέρει ο συνδυασμός, ή θα πρέπει να τα ορίσεις σαν "ένα" χαρακτηριστικό (για απλοποίηση) ή θα πρέπει να δημιουργήσεις κι άλλον πίνακα που θα συμπεριλαμβάνει αυτούς τους συνδυασμούς. Πιστεύω ότι θα είμαι σε θέση να σου απαντήσω καλύτερα αν θελήσεις να γίνει πιο συγκεκριμένος. Πάντως, έτσι όπως το έχεις σχεδιάσει πολλά πράγματα θα πάνε στραβά. Δεν απαντώ ευθέως στο ερώτημά σου γιατί δεν σου κρύβω ότι από την περιγραφή που έχεις κάνει δεν έχω καταλάβει και πολλά πράγματα.&lt;br&gt;</description></item><item><title>Complex Query μέσα στον ίδιο πίνακα</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/68918.aspx</link><pubDate>Sun, 15 Jan 2012 04:35:31 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:68918</guid><dc:creator>Firebrand</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/68918.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=68918</wfw:commentRss><description>Γεια χαρά και καλή χρονιά σε όλους!&lt;br&gt;&lt;br&gt;Έχω το εξής ερώτημα:&lt;br&gt;&lt;br&gt;Έχω έναν πίνακα ο οποίος έχει τις παρακάτω στήλες:&lt;br&gt;ParentID&lt;br&gt;ChildID&lt;br&gt;ChildCharacteristic1&lt;br&gt;ChildCharacteristic2&lt;br&gt;ChildCharacteristic3&lt;br&gt;ChildCharacteristic4&lt;br&gt;και PK το οποίο είναι primary key&lt;br&gt;&lt;br&gt;Κάθε ParentID έχει τουλάχιστον 2 ChildID και σε κάθε σετ το ChildCharacteristic1 είναι ίσο για το ChildID. Ομοίως και το ChildCharacteristic2. Διαφέρουν μόνο τα ChildCharacteristic3 και 4 τα οποία γίνονται &lt;br&gt;Για παράδειγμα σας δίνω τις στήλες με τη σειρά που αναφέρονται παραπάνω χωρίς το PK - το οποίο για αυτο που θέλω να κάνω είναι αχρηστο:&lt;br&gt;&lt;br&gt;1,Α,2,3,Τ,Υ&lt;br&gt;1,Β,2,3,Ο,Π&lt;br&gt;7,G,4,5,Ξ,Κ&lt;br&gt;7,D,4,5,Λ,Μ&lt;br&gt;7,E,5,13,Η,Θ&lt;br&gt;7,F,5,13,Ν,Δ&lt;br&gt;&lt;br&gt;&lt;br&gt;Θέλω να κάνω ένα select το οποίο να μου επιστρέφει&lt;br&gt;ParentID, ChildID, ChildCharacteristic1, ChildCharacteristic2&lt;br&gt;Για να το κάνω πιο ξεκάθαρο θέλω να μου επιστρέψει σε σχέση με το παραπάνω παράδειγμα το παρακάτω:&lt;br&gt;&lt;br&gt;1, Α, Β, 2, 3, Τ, Υ, Ο, Π&lt;br&gt;7, G, D, 4, 5, Ξ, Κ, Λ, Μ&lt;br&gt;7, E, F, 5, 13, Η, Θ, Ν, Δ&lt;br&gt;&lt;br&gt;Πρόκειται για έναν πίνακα με παιδιά και γονείς και κληρονομικότητα.&lt;br&gt;Συγγνώμη για τα dummy data αλλά δεν βρήκα κάτι καλύτερο για να περιγράψω αυτό που προσπαθώ να πετύχω.&lt;br&gt;&lt;br&gt;Βοήθεια ρε παιδιά γιατί η σχεσιακή μου άλγεβρα sucks!&lt;br&gt;Δεν θέλω να μου δώσετε το SQL που θα κάνει τι δουλειά αν και θα το εκτιμήσω ιδιαίτερα αλλά θα ήθελα και λίγο επεξήγηση αν δεν κάνει κόπο.&lt;br&gt;&lt;br&gt;&lt;b&gt;ΟΧΙ T-SQL γιατί πρόκειται για SQLite οπότε καθαρή SQL μόνο.&lt;/b&gt;&lt;br&gt;&lt;br&gt;Ευχαριστώ πολύ.&lt;br&gt;</description></item></channel></rss>