<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://communities.bentley.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>SQL Tipps &amp; Tricks rund um Abfragen mit sisNET</title><link>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>SQL Tipps &amp; Tricks rund um Abfragen mit sisNET</title><link>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet</link><pubDate>Fri, 28 May 2021 15:29:03 GMT</pubDate><guid isPermaLink="false">6dad98f5-dbc9-4c4d-a9ba-e9da8dc6aa8e:310a2558-cf90-4f8f-b9e8-59200d6b0410</guid><dc:creator>Mike Carlisle</dc:creator><comments>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet#comments</comments><description>Current Revision posted to OpenUtilities Wiki by Mike Carlisle on 5/28/2021 3:29:03 PM&lt;br /&gt;
&lt;p&gt;Hallo sisNET Community,&lt;/p&gt;
&lt;p&gt;wie beim GeoForum 2012 in Augsburg angesprochen wird hier nun eine Seite ins Leben gerufen die der sisNET Community Tipps &amp;amp; Tricks rund um das Thema &amp;quot;Qualit&amp;auml;tssicherung der sisNET Daten mittels SQL Abfragen&amp;quot; bereitstellt.&lt;/p&gt;
&lt;p&gt;Alle Mitglieder sind herzlich dazu aufgerufen sich hierbei zu beteiligen. Den Anfang werde ich mit den in Augsburg vorgestellten Abfragen machen...&lt;/p&gt;
&lt;p&gt;Viele Gr&amp;uuml;&amp;szlig;e&lt;br /&gt;Markus Tigiser&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Zun&amp;auml;chst ein paar Beispiele f&amp;uuml;r einfache Abfragen von &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;Sachdaten&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller Sch&amp;auml;chte deren Schachtnummer nicht gef&amp;uuml;llt (NULL) ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_SCH WHERE SCH_NR IS NULL;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;M&amp;ouml;chte man die Ergebnisse in die Selektionsliste nach sisNET &amp;uuml;bertragen so m&amp;uuml;ssen die Werte in die Auswahltabelle des Users (in diesem Fall&amp;nbsp;der User mit der Nummer 5)&amp;nbsp;im User-Schema geschrieben werden:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;INSERT INTO AUSWAHL5(MSLINK,OBJEKT) SELECT MSLINK, OBJEKT FROM DEMO_ADMIN.N_F_SCH WHERE SCH_NR IS NULL;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 2&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen deren Eigent&amp;uuml;mer ungleich fremd und deren Status offen ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE LOWER(EIGENT)!=&amp;#39;fremd&amp;#39; AND STA=&amp;#39;offen&amp;#39;;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 3&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen deren Eigent&amp;uuml;mer ungleich fremd und deren Verlegeart leer oder offen ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE LOWER(EIGENT)!=&amp;#39;fremd&amp;#39; AND (VERLART IS NULL OR VERLART=&amp;#39;offen&amp;#39;);&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Soweit zu den Sachdatenabfragen, weiter geht es mit Abfragen zu den &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;Beziehungen&lt;/strong&gt;&lt;/span&gt; der Objekte&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen ohne Beziehung zu Trassenmittellinien (Objekt ID 11001):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE MSLINK NOT IN(SELECT MSLINK FROM N_F_RLA_BEZ WHERE bez_objekt IN(11001));&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 2&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Deckel ohne Beziehung zu einem Schacht &amp;nbsp;(Objekt ID 13501):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_DEK WHERE UPPER(TYP)=&amp;#39;DECKEL&amp;#39; AND MSLINK NOT IN(SELECT MSLINK FROM N_F_DEK_BEZ WHERE bez_objekt IN(13501));&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 3&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Trassenmittellinien mit mehr als 4 in Beziehungen stehenden&amp;nbsp;Rohrleitungen (Objekt ID 11101):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT N_F_LA_BEZ_BEST.OBJEKT, N_F_LA_BEZ_BEST.MSLINK FROM N_F_LA_BEZ_BEST GROUP BY N_F_LA_BEZ_BEST.OBJEKT, N_F_LA_BEZ_BEST.MSLINK, N_F_LA_BEZ_BEST.BEZ_OBJEKT HAVING COUNT (N_F_LA_BEZ_BEST.MSLINK)&amp;gt;4 AND N_F_LA_BEZ_BEST.BEZ_OBJEKT=11101 ORDER BY N_F_LA_BEZ_BEST.MSLINK;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Als n&amp;auml;chstes m&amp;ouml;chte ich zwei &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;r&amp;auml;umliche Abfragen&lt;/strong&gt;&lt;/span&gt; vorstellen&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1 (r&amp;auml;umliche Abfrage mit SQL)&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller Lagepunktpaare (Objekt ID 15001)&amp;nbsp;innerhalb einer Distanz von 0,001m und beide mit Beziehung zur Rohrleitung:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;select a.mslink as &amp;quot;A.MSLINK&amp;quot;, b.mslink as &amp;quot;B.MSLINK&amp;quot;, a.kox, b.kox FROM (select * from n_f_lp_best aa where aa.mslink in(select bb.bez_mslink from n_f_la_bez_best bb where bb.bez_objekt=15001)) A, (select * from n_f_lp_best aa where aa.mslink in(select bb.bez_mslink from n_f_la_bez_best bb where bb.bez_objekt=15001)) B where A.KOX IN(B.KOX,B.KOX+0.001,B.KOX-0.001) AND A.KOY IN(B.KOY,B.KOY+0.001,B.KOY-0.001) and a.mslink&amp;lt;&amp;gt;b.mslink order by a.mslink;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung&amp;nbsp;2 (r&amp;auml;umliche Abfrage mit Spatial SQL, Voraussetzung daf&amp;uuml;r ist da&amp;szlig; die Daten im Spatial Format abgelegt sind)&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;&lt;/em&gt;Ermitteln aller&amp;nbsp;Netzfl&amp;auml;chen mit einer Gr&amp;ouml;&amp;szlig;e &amp;gt; 100000:&lt;br /&gt;&lt;em&gt;&lt;br /&gt;SELECT GID, SDO_GEOM.SDO_AREA(SDO_GEOMETRY, 0.005) FROM N_F_NET_GEOM_BEST WHERE SDO_GEOM.SDO_AREA(SDO_GEOMETRY, 0.005) &amp;gt; 100000;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: Datenbank, SQL&lt;/div&gt;
</description></item><item><title>SQL Tipps &amp; Tricks rund um Abfragen mit sisNET</title><link>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet/revision/3</link><pubDate>Tue, 27 Jan 2015 18:21:45 GMT</pubDate><guid isPermaLink="false">6dad98f5-dbc9-4c4d-a9ba-e9da8dc6aa8e:310a2558-cf90-4f8f-b9e8-59200d6b0410</guid><dc:creator>Kathy Wiggins</dc:creator><comments>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet#comments</comments><description>Revision 3 posted to OpenUtilities Wiki by Kathy Wiggins on 1/27/2015 6:21:45 PM&lt;br /&gt;
&lt;p&gt;Hallo sisNET Community,&lt;/p&gt;
&lt;p&gt;wie beim GeoForum 2012 in Augsburg angesprochen wird hier nun eine Seite ins Leben gerufen die der sisNET Community Tipps &amp;amp; Tricks rund um das Thema &amp;quot;Qualit&amp;auml;tssicherung der sisNET Daten mittels SQL Abfragen&amp;quot; bereitstellt.&lt;/p&gt;
&lt;p&gt;Alle Mitglieder sind herzlich dazu aufgerufen sich hierbei zu beteiligen. Den Anfang werde ich mit den in Augsburg vorgestellten Abfragen machen...&lt;/p&gt;
&lt;p&gt;Viele Gr&amp;uuml;&amp;szlig;e&lt;br /&gt;Markus Tigiser&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Zun&amp;auml;chst ein paar Beispiele f&amp;uuml;r einfache Abfragen von &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;Sachdaten&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller Sch&amp;auml;chte deren Schachtnummer nicht gef&amp;uuml;llt (NULL) ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_SCH WHERE SCH_NR IS NULL;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;M&amp;ouml;chte man die Ergebnisse in die Selektionsliste nach sisNET &amp;uuml;bertragen so m&amp;uuml;ssen die Werte in die Auswahltabelle des Users (in diesem Fall&amp;nbsp;der User mit der Nummer 5)&amp;nbsp;im User-Schema geschrieben werden:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;INSERT INTO AUSWAHL5(MSLINK,OBJEKT) SELECT MSLINK, OBJEKT FROM DEMO_ADMIN.N_F_SCH WHERE SCH_NR IS NULL;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 2&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen deren Eigent&amp;uuml;mer ungleich fremd und deren Status offen ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE LOWER(EIGENT)!=&amp;#39;fremd&amp;#39; AND STA=&amp;#39;offen&amp;#39;;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 3&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen deren Eigent&amp;uuml;mer ungleich fremd und deren Verlegeart leer oder offen ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE LOWER(EIGENT)!=&amp;#39;fremd&amp;#39; AND (VERLART IS NULL OR VERLART=&amp;#39;offen&amp;#39;);&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Soweit zu den Sachdatenabfragen, weiter geht es mit Abfragen zu den &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;Beziehungen&lt;/strong&gt;&lt;/span&gt; der Objekte&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen ohne Beziehung zu Trassenmittellinien (Objekt ID 11001):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE MSLINK NOT IN(SELECT MSLINK FROM N_F_RLA_BEZ WHERE bez_objekt IN(11001));&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 2&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Deckel ohne Beziehung zu einem Schacht &amp;nbsp;(Objekt ID 13501):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_DEK WHERE UPPER(TYP)=&amp;#39;DECKEL&amp;#39; AND MSLINK NOT IN(SELECT MSLINK FROM N_F_DEK_BEZ WHERE bez_objekt IN(13501));&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 3&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Trassenmittellinien mit mehr als 4 in Beziehungen stehenden&amp;nbsp;Rohrleitungen (Objekt ID 11101):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT N_F_LA_BEZ_BEST.OBJEKT, N_F_LA_BEZ_BEST.MSLINK FROM N_F_LA_BEZ_BEST GROUP BY N_F_LA_BEZ_BEST.OBJEKT, N_F_LA_BEZ_BEST.MSLINK, N_F_LA_BEZ_BEST.BEZ_OBJEKT HAVING COUNT (N_F_LA_BEZ_BEST.MSLINK)&amp;gt;4 AND N_F_LA_BEZ_BEST.BEZ_OBJEKT=11101 ORDER BY N_F_LA_BEZ_BEST.MSLINK;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Als n&amp;auml;chstes m&amp;ouml;chte ich zwei &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;r&amp;auml;umliche Abfragen&lt;/strong&gt;&lt;/span&gt; vorstellen&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1 (r&amp;auml;umliche Abfrage mit SQL)&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller Lagepunktpaare (Objekt ID 15001)&amp;nbsp;innerhalb einer Distanz von 0,001m und beide mit Beziehung zur Rohrleitung:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;select a.mslink as &amp;quot;A.MSLINK&amp;quot;, b.mslink as &amp;quot;B.MSLINK&amp;quot;, a.kox, b.kox FROM (select * from n_f_lp_best aa where aa.mslink in(select bb.bez_mslink from n_f_la_bez_best bb where bb.bez_objekt=15001)) A, (select * from n_f_lp_best aa where aa.mslink in(select bb.bez_mslink from n_f_la_bez_best bb where bb.bez_objekt=15001)) B where A.KOX IN(B.KOX,B.KOX+0.001,B.KOX-0.001) AND A.KOY IN(B.KOY,B.KOY+0.001,B.KOY-0.001) and a.mslink&amp;lt;&amp;gt;b.mslink order by a.mslink;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung&amp;nbsp;2 (r&amp;auml;umliche Abfrage mit Spatial SQL, Voraussetzung daf&amp;uuml;r ist da&amp;szlig; die Daten im Spatial Format abgelegt sind)&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;&lt;/em&gt;Ermitteln aller&amp;nbsp;Netzfl&amp;auml;chen mit einer Gr&amp;ouml;&amp;szlig;e &amp;gt; 100000:&lt;br /&gt;&lt;em&gt;&lt;br /&gt;SELECT GID, SDO_GEOM.SDO_AREA(SDO_GEOMETRY, 0.005) FROM N_F_NET_GEOM_BEST WHERE SDO_GEOM.SDO_AREA(SDO_GEOMETRY, 0.005) &amp;gt; 100000;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: Datenbank, SQL&lt;/div&gt;
</description></item><item><title>SQL Tipps &amp; Tricks rund um Abfragen mit sisNET</title><link>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet/revision/2</link><pubDate>Fri, 13 Sep 2013 07:44:15 GMT</pubDate><guid isPermaLink="false">6dad98f5-dbc9-4c4d-a9ba-e9da8dc6aa8e:310a2558-cf90-4f8f-b9e8-59200d6b0410</guid><dc:creator>Alexander Savin</dc:creator><comments>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet#comments</comments><description>Revision 2 posted to OpenUtilities Wiki by Alexander Savin on 9/13/2013 7:44:15 AM&lt;br /&gt;
&lt;p&gt;Hallo sisNET Community,&lt;/p&gt;
&lt;p&gt;wie beim GeoForum 2012 in Augsburg angesprochen wird hier nun eine Seite ins Leben gerufen die der sisNET Community Tipps &amp;amp; Tricks rund um das Thema &amp;quot;Qualit&amp;auml;tssicherung der sisNET Daten mittels SQL Abfragen&amp;quot; bereitstellt.&lt;/p&gt;
&lt;p&gt;Alle Mitglieder sind herzlich dazu aufgerufen sich hierbei zu beteiligen. Den Anfang werde ich mit den in Augsburg vorgestellten Abfragen machen...&lt;/p&gt;
&lt;p&gt;Viele Gr&amp;uuml;&amp;szlig;e&lt;br /&gt;Markus Tigiser&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Zun&amp;auml;chst ein paar Beispiele f&amp;uuml;r einfache Abfragen von &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;Sachdaten&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller Sch&amp;auml;chte deren Schachtnummer nicht gef&amp;uuml;llt (NULL) ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_SCH WHERE SCH_NR IS NULL;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;M&amp;ouml;chte man die Ergebnisse in die Selektionsliste nach sisNET &amp;uuml;bertragen so m&amp;uuml;ssen die Werte in die Auswahltabelle des Users (in diesem Fall&amp;nbsp;der User mit der Nummer 5)&amp;nbsp;im User-Schema geschrieben werden:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;INSERT INTO AUSWAHL5(MSLINK,OBJEKT) SELECT MSLINK, OBJEKT FROM DEMO_ADMIN.N_F_SCH WHERE SCH_NR IS NULL;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 2&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen deren Eigent&amp;uuml;mer ungleich fremd und deren Status offen ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE LOWER(EIGENT)!=&amp;#39;fremd&amp;#39; AND STA=&amp;#39;offen&amp;#39;;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 3&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen deren Eigent&amp;uuml;mer ungleich fremd und deren Verlegeart leer oder offen ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE LOWER(EIGENT)!=&amp;#39;fremd&amp;#39; AND (VERLART IS NULL OR VERLART=&amp;#39;offen&amp;#39;);&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Soweit zu den Sachdatenabfragen, weiter geht es mit Abfragen zu den &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;Beziehungen&lt;/strong&gt;&lt;/span&gt; der Objekte&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen ohne Beziehung zu Trassenmittellinien (Objekt ID 11001):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE MSLINK NOT IN(SELECT MSLINK FROM N_F_RLA_BEZ WHERE bez_objekt IN(11001));&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 2&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Deckel ohne Beziehung zu einem Schacht &amp;nbsp;(Objekt ID 13501):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_DEK WHERE UPPER(TYP)=&amp;#39;DECKEL&amp;#39; AND MSLINK NOT IN(SELECT MSLINK FROM N_F_DEK_BEZ WHERE bez_objekt IN(13501));&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 3&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Trassenmittellinien mit mehr als 4 in Beziehungen stehenden&amp;nbsp;Rohrleitungen (Objekt ID 11101):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT N_F_LA_BEZ_BEST.OBJEKT, N_F_LA_BEZ_BEST.MSLINK FROM N_F_LA_BEZ_BEST GROUP BY N_F_LA_BEZ_BEST.OBJEKT, N_F_LA_BEZ_BEST.MSLINK, N_F_LA_BEZ_BEST.BEZ_OBJEKT HAVING COUNT (N_F_LA_BEZ_BEST.MSLINK)&amp;gt;4 AND N_F_LA_BEZ_BEST.BEZ_OBJEKT=11101 ORDER BY N_F_LA_BEZ_BEST.MSLINK;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Als n&amp;auml;chstes m&amp;ouml;chte ich zwei &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;r&amp;auml;umliche Abfragen&lt;/strong&gt;&lt;/span&gt; vorstellen&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1 (r&amp;auml;umliche Abfrage mit SQL)&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller Lagepunktpaare (Objekt ID 15001)&amp;nbsp;innerhalb einer Distanz von 0,001m und beide mit Beziehung zur Rohrleitung:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;select a.mslink as &amp;quot;A.MSLINK&amp;quot;, b.mslink as &amp;quot;B.MSLINK&amp;quot;, a.kox, b.kox FROM (select * from n_f_lp_best aa where aa.mslink in(select bb.bez_mslink from n_f_la_bez_best bb where bb.bez_objekt=15001)) A, (select * from n_f_lp_best aa where aa.mslink in(select bb.bez_mslink from n_f_la_bez_best bb where bb.bez_objekt=15001)) B where A.KOX IN(B.KOX,B.KOX+0.001,B.KOX-0.001) AND A.KOY IN(B.KOY,B.KOY+0.001,B.KOY-0.001) and a.mslink&amp;lt;&amp;gt;b.mslink order by a.mslink;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung&amp;nbsp;2 (r&amp;auml;umliche Abfrage mit Spatial SQL, Voraussetzung daf&amp;uuml;r ist da&amp;szlig; die Daten im Spatial Format abgelegt sind)&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;&lt;/em&gt;Ermitteln aller&amp;nbsp;Netzfl&amp;auml;chen mit einer Gr&amp;ouml;&amp;szlig;e &amp;gt; 100000:&lt;br /&gt;&lt;em&gt;&lt;br /&gt;SELECT GID, SDO_GEOM.SDO_AREA(SDO_GEOMETRY, 0.005) FROM N_F_NET_GEOM_BEST WHERE SDO_GEOM.SDO_AREA(SDO_GEOMETRY, 0.005) &amp;gt; 100000;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: Datenbank, SQL&lt;/div&gt;
</description></item><item><title>SQL Tipps &amp; Tricks rund um Abfragen mit sisNET</title><link>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet/revision/1</link><pubDate>Fri, 13 Jul 2012 08:21:58 GMT</pubDate><guid isPermaLink="false">6dad98f5-dbc9-4c4d-a9ba-e9da8dc6aa8e:310a2558-cf90-4f8f-b9e8-59200d6b0410</guid><dc:creator>Markus Tigiser</dc:creator><comments>https://communities.bentley.com/products/utility_network_analysis___design/w/utility_network_analysis_and_design_wiki/6479/sql-tipps-tricks-rund-um-abfragen-mit-sisnet#comments</comments><description>Revision 1 posted to OpenUtilities Wiki by Markus Tigiser on 7/13/2012 8:21:58 AM&lt;br /&gt;
&lt;p&gt;Hallo sisNET Community,&lt;/p&gt;
&lt;p&gt;wie beim GeoForum 2012 in Augsburg angesprochen wird hier nun eine Seite ins Leben gerufen die der sisNET Community Tipps &amp;amp; Tricks rund um das Thema &amp;quot;Qualit&amp;auml;tssicherung der sisNET Daten mittels SQL Abfragen&amp;quot; bereitstellt.&lt;/p&gt;
&lt;p&gt;Alle Mitglieder sind herzlich dazu aufgerufen sich hierbei zu beteiligen. Den Anfang werde ich mit den in Augsburg vorgestellten Abfragen machen...&lt;/p&gt;
&lt;p&gt;Viele Gr&amp;uuml;&amp;szlig;e&lt;br /&gt;Markus Tigiser&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Zun&amp;auml;chst ein paar Beispiele f&amp;uuml;r einfache Abfragen von &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;Sachdaten&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller Sch&amp;auml;chte deren Schachtnummer nicht gef&amp;uuml;llt (NULL) ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_SCH WHERE SCH_NR IS NULL;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;M&amp;ouml;chte man die Ergebnisse in die Selektionsliste nach sisNET &amp;uuml;bertragen so m&amp;uuml;ssen die Werte in die Auswahltabelle des Users (in diesem Fall&amp;nbsp;der User mit der Nummer 5)&amp;nbsp;im User-Schema geschrieben werden:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;INSERT INTO AUSWAHL5(MSLINK,OBJEKT) SELECT MSLINK, OBJEKT FROM DEMO_ADMIN.N_F_SCH WHERE SCH_NR IS NULL;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 2&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen deren Eigent&amp;uuml;mer ungleich fremd und deren Status offen ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE LOWER(EIGENT)!=&amp;#39;fremd&amp;#39; AND STA=&amp;#39;offen&amp;#39;;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 3&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen deren Eigent&amp;uuml;mer ungleich fremd und deren Verlegeart leer oder offen ist:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE LOWER(EIGENT)!=&amp;#39;fremd&amp;#39; AND (VERLART IS NULL OR VERLART=&amp;#39;offen&amp;#39;);&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Soweit zu den Sachdatenabfragen, weiter geht es mit Abfragen zu den &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;Beziehungen&lt;/strong&gt;&lt;/span&gt; der Objekte&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Rohrleitungen ohne Beziehung zu Trassenmittellinien (Objekt ID 11001):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_RLA WHERE MSLINK NOT IN(SELECT MSLINK FROM N_F_RLA_BEZ WHERE bez_objekt IN(11001));&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 2&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Deckel ohne Beziehung zu einem Schacht &amp;nbsp;(Objekt ID 13501):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT MSLINK, OBJEKT FROM N_F_DEK WHERE UPPER(TYP)=&amp;#39;DECKEL&amp;#39; AND MSLINK NOT IN(SELECT MSLINK FROM N_F_DEK_BEZ WHERE bez_objekt IN(13501));&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 3&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller&amp;nbsp;Trassenmittellinien mit mehr als 4 in Beziehungen stehenden&amp;nbsp;Rohrleitungen (Objekt ID 11101):&lt;br /&gt;&lt;br /&gt;&lt;em&gt;SELECT N_F_LA_BEZ_BEST.OBJEKT, N_F_LA_BEZ_BEST.MSLINK FROM N_F_LA_BEZ_BEST GROUP BY N_F_LA_BEZ_BEST.OBJEKT, N_F_LA_BEZ_BEST.MSLINK, N_F_LA_BEZ_BEST.BEZ_OBJEKT HAVING COUNT (N_F_LA_BEZ_BEST.MSLINK)&amp;gt;4 AND N_F_LA_BEZ_BEST.BEZ_OBJEKT=11101 ORDER BY N_F_LA_BEZ_BEST.MSLINK;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Als n&amp;auml;chstes m&amp;ouml;chte ich zwei &lt;span style="background-color:#ffff99;font-size:small;"&gt;&lt;strong&gt;r&amp;auml;umliche Abfragen&lt;/strong&gt;&lt;/span&gt; vorstellen&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung 1 (r&amp;auml;umliche Abfrage mit SQL)&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;Ermitteln aller Lagepunktpaare (Objekt ID 15001)&amp;nbsp;innerhalb einer Distanz von 0,001m und beide mit Beziehung zur Rohrleitung:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;select a.mslink as &amp;quot;A.MSLINK&amp;quot;, b.mslink as &amp;quot;B.MSLINK&amp;quot;, a.kox, b.kox FROM (select * from n_f_lp_best aa where aa.mslink in(select bb.bez_mslink from n_f_la_bez_best bb where bb.bez_objekt=15001)) A, (select * from n_f_lp_best aa where aa.mslink in(select bb.bez_mslink from n_f_la_bez_best bb where bb.bez_objekt=15001)) B where A.KOX IN(B.KOX,B.KOX+0.001,B.KOX-0.001) AND A.KOY IN(B.KOY,B.KOY+0.001,B.KOY-0.001) and a.mslink&amp;lt;&amp;gt;b.mslink order by a.mslink;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;em&gt;&lt;strong&gt;Aufgabenstellung&amp;nbsp;2 (r&amp;auml;umliche Abfrage mit Spatial SQL, Voraussetzung daf&amp;uuml;r ist da&amp;szlig; die Daten im Spatial Format abgelegt sind)&lt;/strong&gt;&lt;/em&gt;:&lt;br /&gt;&lt;/em&gt;Ermitteln aller&amp;nbsp;Netzfl&amp;auml;chen mit einer Gr&amp;ouml;&amp;szlig;e &amp;gt; 100000:&lt;br /&gt;&lt;em&gt;&lt;br /&gt;SELECT GID, SDO_GEOM.SDO_AREA(SDO_GEOMETRY, 0.005) FROM N_F_NET_GEOM_BEST WHERE SDO_GEOM.SDO_AREA(SDO_GEOMETRY, 0.005) &amp;gt; 100000;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item></channel></rss>