Nous utilisons hibernate pour gérer différentes bases de données. L'utilisation de la comparaison de paires sql pose un problème lorsque la source de données est MS SQL. Nous voulons savoir comment convertir cette instruction pour ms sql.Conversion de la comparaison de paires sql pour MS SQL dans Hibernate
Ce qui suit est le sql simplifié.
avis:
- colonne1 et les deux colonne2 sont de type UUID et numérique. (En ms sql sera numérique (19,0)
- l'instruction SQL convertie doit suivre la forme -. WHERE dans les sous-requête
- nouvelle déclaration devrait prendre la performance d'exécution en considération
Code:.
select * from table1 t1
where (t1.column1, t1.column2) in
select (sub.column1, sub.column2) from table2 sub
where sub.column3 = $var
ce qui suit est mon procès j'ai peur de son faible rendement sur la comparaison des chaînes et l'indice ne faisant aucun effet
SELECT *
FROM TABLE_1 T1
WHERE CAST(COL1 AS VARCHAR(19))+CAST(COL2 AS VARCHAR(19))
IN (SELECT CAST(COL1 AS VARCHAR(19))+CAST(COL2 AS VARCHAR(19))
FROM TABLE_2 T2
WHERE T2.COL3 = 'A')
est-ce qu'il y a une suggestion pour nous? merci beaucoup !!