11
votes

Sélectionnez une instruction avec substration dans la clause

J'ai ici une table d'échantillonnage avec trois champs.

    FieldA        FieldB        FieldC
    ======================================
    123XXX456     XXX           John
    124XXX333     XXX           Jenny


2 commentaires

Vous avez essentiellement concerné ABT les 3 premiers et 3 derniers caractères, n'est-ce pas?


Exactement! C'est ce que je voulais.


4 Réponses :


20
votes

2 commentaires

merci Adam. Je serai de retour dans 3 minutes pour accepter la réponse. :)


+1 Pour une solution de travail, mais la question restante est alors pourquoi ne fait pas dynamique comme un travail?



8
votes
SELECT Field2,Field3
FROM TABLE
WHERE SUBSTR(Field1,1,3)='123' AND SUBSTR(Field1,7,3)='456'

0 commentaires

2
votes

Vous n'avez pas précisé pourquoi vous permettez même à Partamb d'être vide dans votre validation d'entrée, mais pour obtenir le comportement exact que vous avez décrit, vous pouvez simplement vérifier ce cas, c'est-à-dire:

WHERE  @paramA!='' AND @paramB!='' AND FieldA LIKE Concat(@paramA, '%', @paramB) 


0 commentaires

0
votes

Comme: E.g Table de classification: Maisons en Amérique, terres en Amérique, etc.

mysql_query("select classification from properties where LEFT(classification, 5) = 'Homes'");


0 commentaires