I need to transform the table on the left into into the format of the table on the right. The original table is in MS Access and I am struggling with this problem.
I found many examples where this was done with min/max aggregated function, but since there are multiple rows for each value, this does not work.
Your tables don't appear to be consistent -
For example, the six original values associated with Type A (highlighted in yellow in the left-hand table below), become six different values (as highlighted in yellow in the right-hand table):
To transform (or "pivot") an Access table, you need a Crosstab Query.
The easiest way to create a Crosstab Query is with the Crosstab Query Wizard.
More Information:
Office.com : Create a crosstab query by using the Crosstab Query Wizard
YouTube : Create a Crosstab Query
Paragon : What is a CrossTab Query?
Related
I am attempting to combine two groupings(sum), EPL and POL and relabel them as something, say "Other GL". The current output is this. I've attempted adding a formula in the criteria but it is not working. I have also attempted adding another column in the design view with a formula alone.
The best way to "combine" data rows for grouping (i.e. sums) is to create a preliminary query which reassigns the individual source rows to a common value. Then use that query as the source for the other query(ies). (Such a preliminary query could be either a nested query -a.k.a. subquery-, or a saved query. I personally prefer saved queries since they can be edited and viewed using the standard Access Query Designer, whereas subqueries can only be edited as SQL text.)
Without other database schema or SQL statement to work with, all I can show is a SQL snippet showing the altered selection:
SELECT iif(Claims2.Grouping = 'EPL' Or Claims2.Grouping = 'POL', 'Other GL', Claims2.Grouping) As AltGrouping, ...
FROM Claims2
For what it's worth, the same iif() statement could also be inserted directly into the your query as a "calculated field"--within the query designer just copy and paste it into the Field cell in place of Grouping. But a saved query that adjusts labels preliminary to final queries can be reused and makes later queries simpler.
I am generating a table in SSRS based on the selection made by the user on two filters: Filter1 and Filter2 (say). The table so displayed has 10 columns and I wish to add filter option listing all available values for that column for all 10 columns.
Basically, I am trying to replicate the Excel functionality of filtering down data on each and every column.
Please note that I tried creating a new data set and a parameter taking all distinct values for a particular variable. However, I am still not able to get the desired results by filter the tablix on that parameter
Is there a way I can do that?
You'd need to make a new dataset that is a smaller version of your main dataset. It would need to return all potential values for the column(s) you want to filter in a single column to be used in a parameter.
Without seeing the design of the report or the dataset itself it's quite hard to be more specific.
I have two table with name disordersampletesting and diorder i want display the both table record on a single line.
However this can also be done with SQL-Server's PIVOT function. However it requires a UNION because PIVOT does not allow for multiple aggregates in a single PIVOT.
Please refer
SQL Server merge multiple rows into one column
I am creating a report in SSRS. I have a table showing the date and time the report was generated, it's a single column table with one expression =Now() and is not linked to any datasets.
The trouble I am having is that it returns 77 rows all with the exact same date. My main dataset returns 77 rows in a different table but that table is not linked to this one in any way.
How can I stop it from returning so many rows? The reason I'm using a table and not a text box is because I want it to have the same look and feel as other data presented in my report i.e. Header Row and Data Presented underneath. There are a few tables that use the same approach and all of them are returning duplicate rows. As you can see from the image below, I just need the first row from each table.
EDIT: Looks like SSRS automatically references a dataset when I insert a new table. When I change the table properties dataset to none it returns an error. Is there a way around this? I don't want data from any dataset, just want to use an simple expression =now()
As you've seen, a Tablix requires a DataSet, and when you only have one DataSet in a report it will link to this DataSet automatically in some circumstances.
You've mentioned you don't want to use Textboxes, but this does seem like the easiest option.
If you're set on using a Tablix for ease of formatting, to prevent any repeating rows just delete the Details group that gets set up by default when you create a Table through the designer:
This leaves a table with one header row only - you can add more header rows as required:
The result is a table that will only display the header rows once, i.e. no repeating rows.
You can add Summary data or individual fields from the DataSet to these header rows; if no aggregation is specified it will just take the first row by default.
I have a series of tables in an Access 2007 database. I am trying to find a way of outputting a flat-file to an excel spreadsheet that combines all of the tables so that each row of the flatfile represents a unique combination of the table rows from each table.
For example, these tables:
Would combine to make this output table:
The challenges I'm facing are:
The 'input' tables can vary in number of rows and columns, as well as quantity
The total number of rows in the final output table can get quite large (200,000+ rows)
I know Excel and VBA (in Excel) well but almost nothing about Access
Is there a way to do this in Access? Is there some native functionality in Access that I'm completely overlooking? Any pointers (even if it's "you need to read into X and Y") would be greatly appreciated!
Thanks,
Adam
As noted above:
Create a new query. Select your 3 tables as the data sources. If desired, set up joins between tables by dragging a line between a field in one table to a field in another. Without joins you will get a Cartesian Product ... every from 1st table paired with every row of 2nd table, and then each of those combination paired with every row of 3rd table. Select the fields you want included in the result set. When the query returns what you need, save it and give it a name. Then you can export that named query to Excel.
If the table is large, you could hit Excel's row / column limit though.