Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013

    [MySQL] Query con REGEXP

    Ciao a tutti, ho problemi a scrivere una query. Il panorama è il seguente:

    Da una tabella che contiene un campo "name" devo estrarre tutti i records in cui il carattere iniziale del testo nel campo "name" non sia una lettera. Ho scritto

    codice:
    SELECT * FROM desalpilles_frontpage WHERE (UPPER(SUBSTR(name, 0, 1)) REGEXP ([^a-zA-Z])
    Ma ricevo l'errore:

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[^a-zA-Z])' at line 1

    Dove sto cappellando?
    Grazie! :maLOL:

    EDIT:

    Anzi, visto che sto usando UPPER, ho ridotto la REGEXP a [^A-Z], ma sempre stesso errore. :master:
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Prova così:

    select * from desalpilles_frontpage WHERE substring(nome,1,1) regexp '[^[:alpha:]]'

  3. #3
    SELECT * FROM desalpilles_frontpage WHERE (UPPER(SUBSTR(name, 0, 1)) REGEXP '[^a-zA-Z]'

    ciao

    [edit]
    secondo

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Grazie!! A parte gli apici, c'erano altre amenità varie del tipo UCASE invece di UPPER e SUBSTRING invece di SUBSTR! Risolte anche quelle
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    substr funziona ugualmente però non capisco a cosa ti serve l'upper o l'ucase che sia per caratteri non alfabetici.

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Il fatto è che io prendo l'upper case del primo carattere del campo title e lo comparo con l'esclusione dei caratteri maiuscoli. Non mi sono addentrato nella tua soluzione particolare con ^[:alpha:] per pura pigrizia nel riscrivere il codice
    Nel caso avessi adottato tale costrutto avrei senz'altro eliminato quel UCASE.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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 © 2024 vBulletin Solutions, Inc. All rights reserved.