Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Wie lade ich nur eine Teil meiner Daten zum testen

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von suppe, 28 August 2015.

  1. suppe

    suppe Neuer Benutzer

    hi


    Ich schreibe grade an einem Programm das eine große Menge landen und weiter verarbeiten soll. Da das Programm mit einer sehr großen Datenmenge arbeitet braucht sowohl das Laden der Daten als auch das Verarbeiten entsprechend lange. Was beim testen des Programms ziemlich in die Zeit geht. Sofern die Hardware mit der Aufgabe überhaupt klar kommt. (das fertige programm wird auf einem Firmensever rennen. Testen du ich aber derzeit lokal)


    Ich könnte die Datenmenge reduzieren indem ich zum Beispiel die entery ID verwende, aber ich kenne die entery ID der für mich relevanten Daten nicht. Was heist ich bekomme entweder die falschen Daten (nur begrenzt zum testen meines Programms geeignet) oder überhaupt keine Daten.


    Gibt es einen weg den Server zu stoppen sobald er mir eine bestimmte Anzahl Zeilen zurückgegeben hat?
     
  2. ukulele

    ukulele Datenbank-Guru

    Wenn du mit MSSQL Management Studio arbeitest und es sich um ein Query handelt kannst du natürlich einfach stoppen, die bis dahin abgerufenen Daten werden dir weiter angezeigt. Ich gehe aber mal davon aus das es sich nicht um eine Abfrage handelt und das du alle Befehle aus deinem Programm heraus ausführst. Dafür wirst du dir schon was passendes schreiben müssen.

    Wenn z.B. deine ersten, zu verarbeiteten Datensätze irgendwo aus einer Tabelle kommt arbeitest du halt mit SELECT TOP 100 anstelle von SELECT. Das hängt aber von deinen Daten ab.
     
    suppe gefällt das.
  3. akretschmer

    akretschmer Datenbank-Guru

  4. suppe

    suppe Neuer Benutzer

    Danke das ist schonmal sehr hilfreich. Funktioniert wunderbar.
    Das einzige Marko ist, dass ich nicht das volle Spectrum meiner Daten abbilde.
    Sagen wir ich habe ein große SQL Anweisung in der vier mal OR vorkommt:


    SELECT FROM tabel WEHRE
    column1 = 7 OR
    column3 = 4 OR
    column4 = 51 OR
    column7 = 40

    Gibt es eine Weg diese 100 gleichmäßig auf meine 4 OR-s zu verteilen? Sodass hinterher gleich viele Reinen ausgewählt wurden die die Bedingung column1 = 7 erfüllen wie für die anderen 3 Spalten.


    Gruß
    suppe
     
  5. ukulele

    ukulele Datenbank-Guru

    Vieleicht so:
    Code:
    SELECT    TOP 25 *
    FROM    tabelle
    WHERE    column1 = 7
    UNION ALL
    SELECT    TOP 25 *
    FROM    tabelle
    WHERE    column3 = 4
    UNION ALL
    SELECT    TOP 25 *
    FROM    tabelle
    WHERE    column4 = 51
    UNION ALL
    SELECT    TOP 25 *
    FROM    tabelle
    WHERE    column7 = 40
    Können dann natürlich weniger als 100 sein und es ist mehr Schreibarbeit.
     
    suppe gefällt das.
  6. suppe

    suppe Neuer Benutzer

    Ja, aber das sollt trotzdem gehen. Danke
     
  7. akretschmer

    akretschmer Datenbank-Guru

    Hat M$SQL kein TABLESAMPLE?
     
  8. Distrilec

    Distrilec Datenbank-Guru

Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden