sql >> Database teknologi >  >> RDS >> Sqlserver

Forespørgsel ved hjælp af en afledt tabel med ISNUMERIC resulterer i konverteringsfejl (varchar til int)

WHERE klausul udføres først. Prøv:

DECLARE @table table (loc varchar(10)) 

INSERT INTO @table VALUES 
('134a'), ('123'), ('abc'), ('124') 

SELECT *  
FROM ( 
    SELECT * FROM @table
) as a 
WHERE ISNUMERIC(loc) = 1 and CAST(loc as INT) BETWEEN 100 AND 200 



  1. Sådan kører du et SQL Plus-script i PowerShell

  2. Kaldning af en Oracle PL/SQL-procedure i Java ved hjælp af en CallableStatement med en boolesk IN-parameter giver en PLS-00306 oracle-fejl:

  3. Hvorfor opstår der en ORA-12054-fejl, når du opretter dette simple materialiserede visningseksempel?

  4. Sæt Mysql-forespørgselsresultat i array i en klasse