Office: (Office 2010) Viele Parameter SQL Abfrage

Helfe beim Thema Viele Parameter SQL Abfrage in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich habe eine Abfrage erstellt, die über die in Excel inkludierte Microsoft Query Software Daten von einem SQL Server holt. Dabei habe... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Paulle94, 5. Oktober 2015.

  1. Viele Parameter SQL Abfrage


    Hallo zusammen,

    ich habe eine Abfrage erstellt, die über die in Excel inkludierte Microsoft Query Software Daten von einem SQL Server holt. Dabei habe ich für diese Abfrage schon mit dem '?' gearbeitet, was auch sehr gut funktioniert hat.

    Bei 20 Parametern habe ich diese manuell in die Abfrage eingefügt, allerdings sind es jetzt 63 Parameter die übergeben werden müssten, wobei 21 Parameter (jeder dritte) immer die selben sind. Nun zeigt mir Excel allerdings keine Daten mehr an.

    Wenn ich nun aber über "SET" einen Alias definiere, z.B. @No := 123, dann würde ich gerne einfach nur 3 Parameter eintragen müssen. Dies funktioniert zwar in HeidiSQL allerdings nutze ich dieses Tool nur der übersicht halber.

    Daher zu meiner Frage, wie ich nun in Microsoft Query Variablen definieren kann um diesen manuellen Aufwand zu erleichtern.

    Danke schonmal im voraus! *Smilie

    VG Paulle94

    :)
     
    Paulle94, 5. Oktober 2015
    #1
  2. Die Abfrage ist nichts weiteres als ein 'String'.

    Strings und Variablen kannst du mit dem '&'-Operator verknüpfen:

    Code:
     
  3. Ja das ist mir bewusst, allerdings beantwortet dies meine Frage leider nicht.
    In MS-Query füge ich den SQL Code ein, den ich zuvor mit HeidiSQL getestet ahbe mit festen Variablen. Wenn ich nun aber die Werte dynamisch zuweisen möchte, dann ersetze ich diese durch das "?". Wenn ich dann die Abfrage in Excel ausführe, fragt Excel ja jeden einzelnen Parameter ab. Soweit so gut.

    Ich möchte nur wissen, wie ich z.B No = ? setzen kann. Dazu muss ich das vorher deklarieren. Wie lautet da die Syntax bei MS-Query. Unter VBA läuft das ganze ja nicht bei mir, da würde das ja auf jeden Fall so funktionieren.

    Der where clause sieht so aus:

    WHERE No = ? AND Timestamp BETWEEN ? AND ?

    Dazu ist zu sagen, dass dort 21 Tabellen mit UNION verknüpft sind und in jeder einzelnen der Where clause so wie oben beschrieben lautet.

    VG Paulle94
     
    Paulle94, 6. Oktober 2015
    #3
  4. Viele Parameter SQL Abfrage

  5. Wie gesagt es funktioniert, wenn ich jeden Parameter einzeln übergebe. Allerdings würde ich gerne vor SELECT eine Variable für jede der drei Bedingungen festlegen, die dann den Parameter enthält und nicht eben diese 63 einzelnen.

    Nur mit Declare oder Set komme ich da nicht voran, da MS Query diese Befehle nicht kennt.

    Weiß nicht wie ich es anders beschreiben soll. Aber danke schon einmal für die Antworten.*Smilie

    VG Paulle94
     
    Paulle94, 7. Oktober 2015
    #5
  6. Also ich habe es nach der Anleitung aus dem Link nachgebaut.

    Und es werden mir nur die Parameter abgefragt für die ich '[]' gesetzt habe.
    Im Abfrage-String als '?' gekennzeichnet.

    Oder willst du den Abfrage-String per VBA setzen und den String dementsprechend manipulieren?
     
  7. Hallo zusammen,

    ja genau das habe ich ja schon. Ich möchte nur gerne zu Beginn drei Variablen = ? setzen, da sich alle drei Parameter wiederholen. und anstelle der 63 Fragezeichen möchte ich dann einfach nur die Variable einsetzen und nur 3 mal einen Parameter definieren müssen.

    Parameter 1 steht in Zelle F4
    Parameter 2 steht in Zelle C6
    Parameter 3 steht in Zelle C7
    Parameter 4 steht in Zelle F4
    Parameter 5 steht in Zelle C6
    Parameter 6 steht in Zelle C7
    .......und so weiter bis Parameter 63.

    Ich will ja nun nicht 63 Mal die selben Parameter eintragen müssen.

    Was ich meine, ist es möglich am Anfang zb. No = Zelle F4, Von = Zelle C6 und Bis = C7 schon zu Anfang der SQL Abfrage zu definieren, sodass ich in MS-Query dann nur noch diese drei Parameter definieren muss.

    In der SQL Abfrage würde dann anstelle der '?' eine Variable stehen, deren Inhalt ein '?' ist.

    VG Paulle94
     
    Paulle94, 7. Oktober 2015
    #7
  8. Viele Parameter SQL Abfrage

    Guten Morgen Paule,

    die einfachste Lösung die mir in den Sinn kommt ist eine Stored Procedure im SQL-Server zu erstellen und diese aus Excel abzufragen.
    Die Stored Procedure hätte dann nur 3 Parameter und verwurstet die 'intern'.

    Viele Grüße,
    Michael
     
    CruelDevice, 7. Oktober 2015
    #8
Thema:

Viele Parameter SQL Abfrage

Die Seite wird geladen...
  1. Viele Parameter SQL Abfrage - Similar Threads - Parameter SQL Abfrage

  2. Standard-Wert ändern bei optionalen Parametern in LAMBDA

    in Microsoft Excel Hilfe
    Standard-Wert ändern bei optionalen Parametern in LAMBDA: Hallo Community, die Überschrift sagt eigentlich alles. Ich suche die richtige Syntax, um den Standard-Wert eines optionalen Parameters in einer Lambda-Funktion anzupassen. [optWERT]=1;...
  3. Parameter aus Tabelle wiedergeben

    in Microsoft Excel Hilfe
    Parameter aus Tabelle wiedergeben: Hallo Forum, ich möchte, dass aus einer Tabelle bestimmte Maximalwerte inklusive entsprechender Zusatzparameter ausgelesen werden. Eine Grundgerüst der Tabelle befindet sich im Anhang. Das Ganze...
  4. VBA Tabelle als Parameter eingeben

    in Microsoft Access Hilfe
    VBA Tabelle als Parameter eingeben: Hallo ich möchte in VBA, ganz simple abfrage "Select * FROM Tabellenname" jedoch den Tabellennamen als parameter übergeben können. Also ich hab ein Formular erstellt wo ein Button vorhanden ist...
  5. Abfrage Nummer Vergleich mit unterschiedlichen Parametern

    in Microsoft Access Hilfe
    Abfrage Nummer Vergleich mit unterschiedlichen Parametern: Hi zusammen, bei meiner Datenbank möchte ich gern eine Abfrage erstellen, die mir für unterschiedliche Länder den Barcode von Produkten abgleicht und mir die Produkte anzeigen lassen, wo die...
  6. Stored Procedure auf SQL Server per VBA aufrufen und Parameter übergeben

    in Microsoft Access Hilfe
    Stored Procedure auf SQL Server per VBA aufrufen und Parameter übergeben: Ich komme bei folgendem Problem einfach nicht weiter..... Ich möchte eine StoredProcedure mit dem Namen "parameter" auf einem SQL-Server (2005 Express) aufrufen und der SP einen Parameter...
  7. Verwenden von Parametern zur Eingabeaufforderung beim Ausführen einer Abfrage

    in Microsoft Access Tutorials
    Verwenden von Parametern zur Eingabeaufforderung beim Ausführen einer Abfrage: Verwenden von Parametern zur Eingabeaufforderung beim Ausführen einer Abfrage Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010...
  8. Parameter in SQL Befehl eingeben

    in Microsoft Access Hilfe
    Parameter in SQL Befehl eingeben: Wie kann ich in Parameter in SQL Statement eingeben, sodass z.B. beim Auswahl eines Landes im Hauptformular in Unterformular nur die Mitarbeiter ausgewählt werden können, die in aktuellem Land sind?
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden