Créer vue SQLITE3 (Demande d'aide)

Résolu
Bonjour,
Sur sqlite3 j'ai créé une table mono-colonne avec des valeurs de 0 à 100.
Soit 101 lignes.
Je doit créer une vue avec 3 colonnes.
Une colonne x, une colonne y et une colonne z, z étant calculée à partir de x et y.
Exemple :
x | y | z
--------------------------------
100| 80| 100,080

Au total je doit obtenir une table avec 3 colonnes et 10201 lignes (101 *101).
Exemple :
x | y | z
0 | 0 | 000,000
0 | 1 | 000,001
... | ... | ...
100 | 100 | 100,100

Merci pour votre aide,
lolpark

3 réponses

  1. Bonjour Jordane45,

    Je ne vois pas comment intégrer la commande à mon code.
    Comment je peux l’intégrer ?
    1. Contributeur
      un exemple d'utilisation:
      CREATE VIEW vue_points AS
      SELECT x.nombre AS x, y.nombre AS y,
      printf('%03d', x.nombre) as lx, printf('%03d', y.nombre) as ly
      FROM zero_cent AS x, zero_cent AS y;
    2. @yg_beMerci beaucoup !
      Voila ma commande final qui fonctionne:

      CREATE VIEW vue_points AS
      SELECT x.nombre AS x, y.nombre AS y,
      printf('%03d', x.nombre)||","|| printf('%03d', y.nombre) as z
      FROM zero_cent AS x, zero_cent AS y;


      Bonne journée
  2. Modérateur
    Bonjour,

    En sqlite3, si tu veux formater tes nombres en ajoutants les "lead" zero..
    Tu peux
    --  zero-pad to 3 digits:
    select substr('000'||y,- y.nombre);
    

    ou un sprintf
    select printf('%04d',  y.nombre)
    

    1. Re-bonjour,
      J'ai réussi à créer ma vue par contre j'ai un problème avec le format.

      CREATE VIEW vue_points AS
      SELECT x.nombre AS x, y.nombre AS y, CASE WHEN y.nombre == 100
      THEN x.nombre "." y.nombre WHEN y.nombre < 10
      THEN x.nombre ".00" y.nombre
      ELSE x.nombre ".0" y.nombre
      END AS z FROM zero_cent AS x, zero_cent AS y;


      Ce qui me donne :
      x | y | z
      0 | 0 | 0.001
      au lieu de :
      x | y | z
      0 | 0 | 000.001

      Comment faire pour ajouter des 0 à ma valeur x reprise dans z afin d'obtenir 3 chiffres à chaque fois comme je l'ai fait avec la valeur y ?
      Merci de votre aide,
      Lolpark
      1. Contributeur
        bonjour, moi je commencerais par faire une view mono-colonne qui met les 101 valeurs dans le bon format.
        et ensuite une view qui combine les valeurs deux par deux.
      2. @yg_beIntéressant j’essayerai mais je préférerais le faire une seule vue comme la commande que j'ai envoyé précédemment.
        Merci pour ton idée