Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Php sql - Selezionare le prime sette righe di una tabella

    Ciao,

    avrei gentilmente bisogno di un aiuto per una query sql abbinato a php.

    Ho la tabella ST (Stato):

    ST_ID INT Primary key
    ST_DESC VARCHAR 200


    1. Devo ordinare la select a seconda del ST_DESC, quindi avrò:

    SELECT * FROM ST ORDER BY ST_DESC.


    2. In seguito devo estrapolare dalla query solamente le prime 7 righe.

    Come faccio a scrivere una sola query che faccia le due operazioni contemporaneamente?

    Grazie.

  2. #2
    Forse non ho capito a pieno il problema ma con LIMIT e numero di righe dovrebbe risolverti il problema

    LIMIT [start_record,]end_record

    se ricordo bene la sintassi, quindi dovresti avere una cosa del genere nella query

    SELECT * FROM ST ORDER BY ST_DESC LIMIT 7

    ciao e buona fortuna

  3. #3
    Nel database che sto adoperando (DB2 AS/400), la parola LIMIT non é permessa.

    La sintassi deve esssere quella di ORACLE.

    Ti rispiego il problema.

    La tabella stato (ST) ha due campi che sono:

    - ST_ID che é chiave principale composto da integer,
    - ST_DESC é un VARCHAR ed indica la descrizione relativa all'ST_ID.

    Quello che dovrei fare é creare una query sql versione ORACLE, che possa eseguire le due seguenti condizioni contemporaneamente:

    1. Ordinare la select a seconda della descrizione (ST_DESC).
    Fin qua nessun problema.

    2. Limitare la select solamente alle prime sette righe.

  4. #4
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    prova con

    FETCH FIRST 7 ROWS ONLY;

    dopo order by
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  5. #5
    Funziona grazie mille, ma come a fare una seleziona dalla riga no. 8 alla riga no. 14??

  6. #6
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    penso che tu debba controllare l'id della riga 7 e inserirlo nella clausola where
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  7. #7
    Esatto, grazie del consiglio! In questo modo la query nella pagina seguente sarà la seguente:

    SELECT * FROM ST WHERE ST_ID > 7
    ORDER BY ST_DESC FETCH FIRST 7 ROWS ONLY

    Nella terza pagina:

    SELECT * FROM ST WHERE ST_ID > 14
    ORDER BY ST_DESC FETCH FIRST 7 ROWS ONLY

    In questo modo posso gestire il risultato in maniera ottimale!!

    Grazie mille del consiglio.

  8. #8
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514


    di nulla
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


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.