2013-07-25 3 views
0
SELECT A.FirstName, A.LastName, B.PatientId, B.RoomNumber, B.AdmissionDate, B.DischargeDate, B.MeasureCategory 
FROM DimPatient A, DimPatientStay B 
WHERE A.Id = B.PatientId AND A.FirstName = 'Anuj' AND B.MeasureCategory = 'ED' 

salut certains updation pour cette i résolu ce problème prob parcomment convertir une requête sql en rubis et en rails?

MODELNAME.find_by_sql("your sql query") 
+0

Que voulez-vous avec la requête? À quel problème faites-vous face? – Novice

+0

Pourriez-vous s'il vous plaît nous en dire plus sur votre question, il est très difficile d'aider si vous n'indiquez pas votre problème. –

Répondre

0

Je suppose que vous pouvez essayer:

ActiveRecord::Base.connection().execute(#your_sql_here) 
+0

hey jamesMacLeod merci pour votre réponse, mais quand j'exécute ma requête, il renvoie -1 comment puis-je récupérer mes valeurs ?? ** maintenant ma requête est: - ** @users = ActiveRecord :: Base.connection.execute ("sélectionnez A.FirstName, A.LastName, B.PatientId, B.RoomNumber, B.AdmissionDate, B.DischargeDate , B.MeasureCategory de [exim]. [Dbo]. [DimPatient] A, [exim]. [Dbo]. [DimPatientStay] B où A.Id = B.PatientId ET A.FirstName = 'Anuj' ") ** logger.info ("valeurs de test # {@ users}") ** –

0

On suppose que A est une classe et B est une autre, vous devez utiliser comprend comme suit:

A.includes(:b).where(...) # add you condition in where 

Je propose de vérifier bons tutoriels vidéo de ActiveRecord here

1

Vous pouvez essayer de trouver le résultat de requête SQL dans Rails

query_params = Hash.new 
    sql_query = "SELECT A.FirstName, A.LastName, B.PatientId, B.RoomNumber, B.AdmissionDate, B.DischargeDate, B.MeasureCategory 
FROM DimPatient A, DimPatientStay B 
WHERE A.Id = B.PatientId AND A.FirstName = :first_name AND B.MeasureCategory = :measure_category" 

query_params[:first_name] = first_name 
query_params[:measure_category] = measure_category 


@query_results = ActiveRecord::Base.connection.select_all(
    ActiveRecord::Base.send("sanitize_sql_array",[sql_query, query_params]) 
) 
Questions connexes