LabVIEWForum.de - Inhalt eines 1-D Arrays in eine SQL-Abfrage einbinden

LabVIEWForum.de

Normale Version: Inhalt eines 1-D Arrays in eine SQL-Abfrage einbinden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich habe noch ein kleines Problem zwecks der SQL-Abfrage.

Vielleicht kann mir jemand sagen, ob und wie man den Inhalt eines 1-D Array (bestehend aus ID's in String konvertiert) eine eine SQL-Abfrage einbinden kann, um somit die Übereinstimmungen mit einer in Access angelegten Tabelle anzeigen zu lassen.

Hab mal einen Teil meines Programms dargestellt. Der Teil filtert mir die doppelten ID's aus und schreibt mir die restlichen ID's in das Array Übereinstimmungen, das ich in meine Abfrage benötige.

[attachment=26447]

Lv09_img2

Vielleicht hat ja jemand eine Idee, wie man besten lösen kann.

Vielen Dank schon mal.
Ich blicke noch nicht so ganz, was Du möchtest.

Gruß Markus
Schreib doch mal auf, was in "Übereinstimmungen" drin steht und wo du es in der SQL Abfrage sehen willst.

Da der SQL Befehl ja nur ein Text ist, musst du das Array einfach in eine Zeile packen.


Gruß SeBa
Hallo SeBa,

hab mal das Array Übereinstimmungen angefügt, vielleicht wirds ja dann ein bisschen klarer.

[attachment=26478]


Ich will eigentlich nur die ID's aus meiner Datenbank anzeigen lassen, die mit dem Inhalt des Arrays Übereinstimmungen gleich sind. Hinter jeder ID steckt ein Produkt, das mir somit angezeigt wird.

Ich weiss leider nicht, wie ich in die SQL-Abfrage das Array einfügen muss.
Zwei Beispiel Querys:

[attachment=26481]
[attachment=26482]


Um von deinem Array jetzt zu der WHERE Bedingung zu kommen, kannst du ein bischen mit der Forloop und der Stringpalette spielen.

Gruß SeBa


PS:

Wirklich hilfreich wäre es gewesen, wenn du den gewünschten Query einfach mal gepostet hättest.
Wenn du allerdings selbst nicht weißt, was oder wie du den SQL Server fragen willst/kannst... dann solltest du mal ein Buch zu SQL aufschlagen.
Hallo SeBa,

hab noch mal meine Abfrage angehängt.

[attachment=26485]

Da ich zwei Tabellen habe -- Artikelbestand mit den Spalten ArtikelNr, Produkt, Menge und Preis in €
-- ArtikelID mit den Spalten ID und ArtikelNr
habe ich die zwei Tabellen mit einem INNER JOIN miteinander verknüpft.

Mein Problem ist es noch das Array miteinzubinden, da der Inhalt des Arrays sich verändert und nicht konstant ist.
Wie gesagt:

Forloop und Stringpalette...


Bringt einen jetzt echt nicht um Wink

[attachment=26489]



Gruß SeBa
Super vielen Dank

werds mal ausprobieren.

Danke nochmal
das was du machen möchtest geht nur bedingt. Man kann in einem SQL Statement keine Arrays verarbeiten, schon gar nicht in Access. Auf einem MS-SQL Server könnte man sich eine Stored Procedure schreiben, die ein Array verarbeitet, allerdings kann man da auch kein Array direkt übergeben sondern muss das über einen Umweg realisieren

Was du aber machen könntest ist die IDs mit OR verknüpfen, also

Code:
SELECT spaltenname FROM tabellenname WHERE id_spalte=1 OR id_spalte=5 OR id_spalte=17 OR undsoweiter

oder du verwendest den Listen-Operator "IN":

Code:
SELECT spaltenname FROM tabellenname WHERE id_spalte In (1,5,7,24,usw)

wobei ich mir aber grad auch nicht sicher bin ob Access den unterstützt ....
Habs soweit hingebracht.

Vielen Dank nochmal an alle

Gruß Andreas
Referenz-URLs