j'ai les tableaux ci-dessous ci-dessousLignes et colonnes SQL dynamiques ... les cellules requièrent une requête ultérieure. Meilleure approche?
City
---------
CityID
StateID
Name
Description
Reports
---------
ReportID
HeaderID
FooterID
Description
Je suis en train de générer une grille pour une utilisation dans un contrôle .Net (Gridview, Listview ... autre question au sujet de ce qui sera le « meilleur » un à utiliser pour mon fins) qui affecteront les rapports en tant que colonnes et les villes en tant que lignes.
Quelles sont les villes s'affichent est basée sur l'état sélectionné et est assez facile
SELECT * FROM CITIES WHERE [email protected]
Cependant, l'utilisateur est en mesure de sélectionner les rapports sont générés pour chaque ville (démographie, ventes, superficie des terres, etc.). En outre, les cellules résultantes (City * Report) sont une sous-requête sur différentes tables en fonction de la ville sélectionnée et du rapport.
Ie. Les ventes de la colonne de rendements sélectionnés
SELECT * FROM SALES WHERE [email protected]
J'ai programmé une solution très inélégante en utilisant plusieurs requêtes et forçage brute de la grille à créer (ligne par ligne, ligne par la création de la ligne d'éléments de données), mais je suis positif il doit y avoir une meilleure façon d'accomplir cela ...? Toutes/toutes les suggestions appréciées ici car l'approche de la force brute que j'ai obtenue est lente et lourde ... et cela devra être souvent utilisé par le client, donc je ne suis pas sûr que ce soit acceptable dans sa mise en œuvre actuelle.
Obtenez le 'à JOIN '. –
Je peux assez facilement joindre les tables, cependant, ce sont les requêtes suivantes qui me causent le chagrin .... cela et pas toutes les villes auront des données pour chacun des rapports. J'ai regardé un tableau de villes temporaires, avec des colonnes générant dynamiquement pour chaque rapport/colonne, mais j'ai échoué avec les valeurs nulles – Pyrrhonist