Visualizzazione dei risultati da 1 a 8 su 8

Discussione: problema select

Visualizzazione discussione

  1. #4
    Quote Originariamente inviata da cablos Visualizza il messaggio
    salve

    ...
    devo però mostrare solo i campi il cui tipo di dato è tinyint(1) ma il cui valore è uguale ad "1"

    ...
    questo non è che si capisca tanto;

    ....comunque , vedi se una cosa del genere può andare http://sqlfiddle.com/#!9/84936/6
    codice:
    CREATE TABLE atable (
       campo1 TINYINT(1)
      ,campo2 TINYINT(1)
      ,campo3 INT
    );
    
    INSERT INTO atable VALUES (1, 0, 0);
    INSERT INTO atable VALUES (0, 0, 0);
    
    SELECT 
    CONCAT('SELECT ''', GROUP_CONCAT(c.COLUMN_NAME,CONCAT(''' as RESULT FROM atable where ', c.column_name , ' = 1  ') SEPARATOR ' UNION SELECT '''  ) )
    into @query
    FROM INFORMATION_SCHEMA.COLUMNS c
    WHERE c.TABLE_NAME = 'atable'
      AND c.COLUMN_TYPE='TINYINT(1)'
    ORDER BY c.ORDINAL_POSITION;
    
    -- vedo la query generata
    SELECT @query;
    
    PREPARE stmt FROM @query;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt ;
    Ultima modifica di sspintux; 06-12-2015 a 17:43

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.