sql >> Base de Datos >  >> RDS >> Mysql

cómo mostrar el registro correspondiente del acceso basado en otra columna en Datagrid en vb6

Puede utilizar una consulta como esta:

SELECT subjectcode.Year1, subjectcode.Year2, 
       subjectcode.Subjectcode, subjectcode.Subjectname, 
       subjectcode.Theory_Practical, q.fee
FROM subjectcode 
INNER JOIN (
       SELECT fees.Year1, fees.Year2, "Theory" As FeeType, 
              fees.Theoryfee As Fee
       FROM fees
       UNION ALL
       SELECT fees.Year1, fees.Year2, "Practical" As FeeType, 
              fees.Practicalfee As Fee
       FROM fees)  AS q 
ON (subjectcode.Theory_Practical = q.FeeType) 
   AND (subjectcode.Year2 = q.Year2) 
   AND (subjectcode.Year1 = q.Year1)

Sin embargo, sería mucho mejor rediseñar su tabla de tarifas para que coincida con los datos devueltos por el sql interno, es decir, una línea diferente para la teoría y las tarifas prácticas:

Year1   Year2   FeeType     Fee
2001    2003    Theory      440
2001    2003    Practical   320