2.6 KiB
2.6 KiB
Machines_Crosstab
Analysis generated on: 4/2/2025 10:02:02 AM
SQL Statement
TRANSFORM First(Machines.CycleTime) AS FirstOfCycleTime
SELECT Machines.PartNumber, Left([PartNumber],7) AS Part, Max(IIf([Prime],[MachineName])) AS PrimaryMachine, Format(Max(IIf([Prime],[Cycletime])),"0.0") AS StdTime
FROM Machines
GROUP BY Machines.PartNumber
PIVOT Machines.MachineName;
Dependencies
Parameters
- None
What it does
SQL Code Description
Overview
This SQL code transforms the Machines
table by performing several operations:
- Selecting first occurrence of cycle time: It selects the first record from each group based on the
PartNumber
. - Extracting part number: It extracts the first 7 characters from the
PartNumber
. - Identifying primary machine: It identifies the maximum value in the
MachineName
column for eachPartNumber
, considering only records where[Prime] = TRUE
. If no such record exists, it returns an empty string. - Calculating standard time: It calculates the maximum cycle time for each
PartNumber
and formats it as a decimal value with two places.
Detailed Breakdown
First Section: SELECT Statement
SELECT
Machines.PartNumber,
Left([PartNumber],7) AS Part,
Max(IIf([Prime],[MachineName])) AS PrimaryMachine,
Format(Max(IIf([Prime],[Cycletime])), "0.0") AS StdTime
FROM
Machines
GROUP BY
Machines.PartNumber
- This section selects the required columns from the
Machines
table. - It groups the results by the
PartNumber
. - The
Left([PartNumber], 7)
function extracts the first 7 characters from thePartNumber
.
Second Section: TRANSFORM Statement
TRANSFORM
First(Machines.CycleTime) AS FirstOfCycleTime
- This section transforms the results by selecting the first occurrence of
CycleTime
for each group based on thePartNumber
.
Final Section: PIVOT Statement
PIVOT
Machines.MachineName;
- This section pivots the results, rotating the columns to match the unique values in the
MachineName
column.
Result
The final result is a table with the following structure:
Part | Primary Machine | Std Time |
---|---|---|
... | ... | ... |
Each row represents a part number, and the columns contain the extracted part number, primary machine name, and standard time value. The PrimaryMachine
column contains the maximum machine name for each part number where [Prime] = TRUE
, and the StdTime
column contains the formatted maximum cycle time for each part number.