IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Ne faire un dump que sur les X derniers enregistrements


Sujet :

Requêtes MySQL

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2015
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Ne faire un dump que sur les X derniers enregistrements
    Bonjour à tous,

    pour les besoin d'un script qui effectue différents calculs sur 2 serveurs distants j'ai besoin de récupérer certaines informations dans une base de données et les envoyer sur une autre machine pour les intégrer.

    J'ai monté tout un script qui génère un tar avec les données dures (fichiers images et autres...) et il ne me reste plus qu'a exporter quelques lignes SQL pour joindre ce micro-dump au tar.

    C'est là que je coince... autant faire un mysqldump ne pose pas de problème, mais j'aimerai réaliser cela en lui spécifiant de ne prendre que les X derniers enregistrements de la table car la table est très lourde. J'ai tenté plusieurs trucs mais cela coince toujours.

    Quelqu'un pourrait-il éclairer ma lanterne ?

    Merci d'avance,
    Fred

  2. #2
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 378
    Points : 19 054
    Points
    19 054
    Par défaut
    Salut FredAWT.

    Citation Envoyé par FredAWT
    j'aimerai réaliser cela en lui spécifiant de ne prendre que les X derniers enregistrements de la table car la table est très lourde
    Si j'ai besoin de récupérer disons les 10 dernières lignes d'une table contenant 100 lignes au total, je procède ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from {ma table} order by id limit 90,10
    Ou encore en faisant un tri du plus grand au plus petit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from {ma table} order by id desc limit 10
    Ici, 'id' est la clef primaire de la table.
    Ainsi je crée une table temporaire avant de faire mon 'mysqldump'.

    Autre solution possible mais uniquement avec MySqlDump. Il existe en effet un clause where.
    Dans le même exemple, il suffit d'indiquer par la clause where que tu extrais uniquement les lignes : 'id > 90'.

    Cela se traduit par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysqldump  --databases base --tables test  --where="id > 90" --result-file=test.sql
    Comme tu peux le voir, il existe plusieurs solutions pour extraire ce dont tu as besoin.

    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

Discussions similaires

  1. [10g] Une requête sur les 4 derniers enregistrements
    Par ivoratparis dans le forum SQL
    Réponses: 2
    Dernier message: 07/08/2014, 00h14
  2. [XL-2003] faire une somme que sur les colonnes visibles
    Par mimilll dans le forum Excel
    Réponses: 21
    Dernier message: 27/08/2009, 12h10
  3. Requête de tri sur les 20 derniers enregistrements
    Par kryogen dans le forum Langage SQL
    Réponses: 16
    Dernier message: 16/04/2007, 10h40
  4. [MySQL] Requête de tri sur les 20 derniers enregistrements
    Par kryogen dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 16/04/2007, 10h26
  5. faire un group by sur les différents niveau de code
    Par speed034 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 07/10/2004, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo