Microsoft
Software
Hardware
Network
Frage : Wie zwei Felder vergleichen und gegründet auf einem zutreffenden Vergleichseingang in ein anderes Feld?
O.K., habe ich eine Tabelle, die DeviceName, OutageType, OutageDate, DownDate hat, TotalD
own.
ColA habe die mehrfachen Eintragungen, die auf wenn outaged geschehen basieren (ob Störung unten war oder up).
ColB hat die Art der Störung für die spezifizierte Vorrichtung Kolabaum (wieder auf oder ab) im
ColC ist das Datum, welches das Störung (in ColB) occurred
ColD das Datum ist, die Vorrichtung (im Kolabaum) down
ColE ist die Gesamtzeit ging (im dezimalen Format) die die Vorrichtung (dieses ist ein im Voraus berechnetes Feld, das von einem anderen Index eingesetzt wird) aber nur angebracht zu den Feldern/zu den Reihen, die war Tabelle des devicetype='up'< Brs/>
The hinunter wie aussieht:
abcd-s-2-01 unten
te>, Null, N
ull
abcd-s-2-01, herauf,
>,
e>,
ime>
abcd-s-2-01 unten
te>, Null, N
ull
abcd-s-2-01, herauf,
>,
e>.
ime>
Basically eine Störungsart von unten enthält nur den Gerätenamen, die Art der Störung und als diese Störung auftrat. Eine Störungsart von hohem enthält den Namen, Art, Datum der Störung, ging Datumvorrichtung unten, und die Gesamtzeit, die es down
Here war, ist, was ich benötige. Ich muss eine neue Tabelle herstellen, die enthält:
DeviceName
DeviceType
DownDate
UpDate (dieses ist das Datum, in dem das devicetype='Up für die Vorrichtung oben verzeichnet im Kolabaum)
TotalDown
The oben genannte Notwendigkeiten, für nur jene Vorrichtungen zu sein, die „unten“ sind. Das Ziel der Tabelle ist, zu zeigen, welche Vorrichtung unten ging und wenn, und dann, als es Unterstützung und die Gesamtzeit kam, nahm sie, um zu kommen Unterstützung.
The Tabellenausgang sollte wie aussehen:
abcd-s-2-01 unten
>,
,
e> *where Update ist das outagedate, wenn type=up.
The Mühe, die ich habe, herausfindet, wie man das Update und das TotalTime erhält. Ich kann die ersten 3 Spalten von der anderen Tabelle zurückholen, weil die auf einer Reihe aufgeführt sind. Ich habe Probleme zu versuchen, das outageDate und das TotalTime zurückzuholen wenn Type=Up und es in mein neues table.
I einzusetzen versucht, zwei strSQL Aussagen (eine, wo outagetype=down und die andere laufen lassend wo outagetype=up) und vergleiche DeviceName, aber die zweite SQL-Frage (wo type=up) legt nicht die gleichen devicename Daten vor. Z.B.:
SQL1 produziert:
devicename, outagetype, down
date
abcd-s-2-1 unten 17:00 2010-06-01: 37
abcd-s-2-1 unten 19:00 2010-06-01: 15
xyz-s-2-1 unten 18:00 2010-06-01: 01
xyz-s-2-1 unten 07:05 2010-06-05: 49
xyz-s-2-1 unten 12:15 2010-06-10: 56
SQL2 produziert:
devicename, outagetype, down
date, outag
edate, tota
ltime
abcd-s-2-1, HERAUF, 17:00 2010-06-01: 37, 17:15 2010-06-01: 00, 0.23
abcd-s-2-1, HERAUF, 19:00 2010-06-01: 15, 19:30 2010-06-01: 18, 0.51
xyz-s-2-1, HERAUF, 18:00 2010-06-01: 01, 19:00 2010-06-01: 00, 1.00
xyz-s-2-1, HERAUF, 07:05 2010-06-05: 49, 09:35 2010-06-05: 25, 2.50
xyz-s-2-1, HERAUF, 12:15 2010-06-10: 56, 11:10 2010-06-11: 10, 22.90
xyz-s-2-1, HERAUF, 10:22 2010-06-06: 00, 01:11 2010-06-07: 41, 20.85
as, das Sie sehen können, SQL2, hat eine Extraeintragung, die nicht in den Resultaten der Frage SQL1 ist. Wenn ich ein recordset tue, um die zwei Gerätenamen (objRS.Fields (Namens) =objRS1
.Fields (na
me) zu vergleichen) Ich erhalte ungültige Werte ganz über dem Platz oder nichts becaue, wenn SQL2 <> SQL1 es oben den Rest des recordset Loop.
The einfachen Codes verwirrt, den ich bin habe:
objRS = SQL1
objRS1=SQL2
Do, bis objRS.EOF
if objRS (Name) =
then up_date = else
up_date = null
This unitl ich bearbeitet, gelangen an den Punkt, in dem es Extraresultate von SQL2 gibt, die nicht mit SQL1 vergleichen (oder umgekehrt).
Is dort eine nicht so schwierige Weise, dieses in VB zu erzielen? Ich habe versucht, es für zwei Tage zu tun und ich schlage ein Geistesblock.
If, das Sie mehr Klarheit lassen mich know.
benötigen
Antwort : Wie zwei Felder vergleichen und gegründet auf einem zutreffenden Vergleichseingang in ein anderes Feld?
Annehmen, diese Daten in Ihrer Tabelle habend
devicename, outagetype, downdate, outagedate, totaltime
acbd-s-2-1 NIEDERWERFEN 15:00 2010-05-05 05-05: 00.000 UNGÜLTIGE NULL
acbd-s-2-1 UP 15:00 2010-05-05: 00.000 18:15 2010-05-05: 00.000 3.25
acbd-s-2-1 NIEDERWERFEN 13:00 2010-05-06 05-06: 00.000 UNGÜLTIGE NULL
acbd-s-2-1 UP 13:00 2010-05-06: 00.000 13:45 2010-05-06: 00.000 0.75
acbd-s-2-1 NIEDERWERFEN 11:00 2010-05-10 05-10: 00.000 UNGÜLTIGE NULL
xyz-b-23-1 NIEDERWERFEN 12:12 2010-04-05 04-05: 00.000 UNGÜLTIGE NULL
xyz-b-23-1 UP 12:12 2010-04-05: 00.000 13:15 2010-04-05: 00.000 1.01
xyz-b-23-1 NIEDERWERFEN 11:00 2010-05-05 05-05: 00.000 UNGÜLTIGE NULL
xyz-b-23-1 UP 11:00 2010-05-05: 00.000 14:05 2010-05-05: 00.000 3.02
xyz-b-23-1 NIEDERWERFEN 11:15 2010-05-06 05-06: 00.000 UNGÜLTIGE NULL
wenn Sie diese Frage laufen ließen
A.*, B.* vorwählen von
(* vom tblOutage vorwählen in dem OutageType = „unten "), A
inner verbinden
(* vom tblOutage VORWÄHLEN in dem OutageType = „oben "), B
auf A.Devicename=B.Devicename UND A.downdate=b.downdate
Sie haben dieses Resultat
devicename outagetype downdate outagedate totaltime devicename outagetype downdate outagedate totaltime
----------------- ------------ ----------------------- ----------- ---------- ------------- ------------ ----------------------- ----------------------- ------------
acbd-s-2-1 NIEDERWERFEN 15:00 2010-05-05 05-05: 00.000 UNGÜLTIGE NULL acbd-s-2-1 UP 15:00 2010-05-05: 00.000 18:15 2010-05-05: 00.000 3.25
acbd-s-2-1 NIEDERWERFEN 13:00 2010-05-06 05-06: 00.000 UNGÜLTIGE NULL acbd-s-2-1 UP 13:00 2010-05-06: 00.000 13:45 2010-05-06: 00.000 0.75
xyz-b-23-1 NIEDERWERFEN 11:00 2010-05-05 05-05: 00.000 UNGÜLTIGE NULL xyz-b-23-1 UP 11:00 2010-05-05: 00.000 14:05 2010-05-05: 00.000 3.02
xyz-b-23-1 NIEDERWERFEN 12:12 2010-04-05 04-05: 00.000 UNGÜLTIGE NULL xyz-b-23-1 UP 12:12 2010-04-05: 00.000 13:15 2010-04-05: 00.000 1.01
(4 Reihen beeinflußt)
Weitere Lösungen
Wort-Presse, die Frage bewirtet
asp.net: Mein Problem ist, benutze ich einen ajax Ergänzung Kalender, um BeginDate u. EndDate Werte einzutragen
Silverlight 4 UI Ereignisse
wie kann ich irgendeine Bildentschließung online ändern und sie zum lokalen PC dann innen sparen??
ZFS Sicherungshilfe Ubuntu 10.0.4 LTS
Form-Frage für Kristallreports
Betreffend INOTES in Lotos 8.5
Mühen, die ZWISCHEN Logik erhalten zu arbeiten
Spannungs-Sensor ermittelte einen Ausfall auf Bediener DELL-PowerEdge 2650
broadcom NIC teaming