CLEANUP - changes to folder structure
This commit is contained in:
400
Classes/DataBaseHandler/sql_query_collection.txt
Normal file
400
Classes/DataBaseHandler/sql_query_collection.txt
Normal file
@@ -0,0 +1,400 @@
|
||||
|
||||
SELECT COUNT(*)
|
||||
FROM `Results`
|
||||
|
||||
SELECT COUNT(DISTINCT run_id) AS unique_run_count
|
||||
FROM `Results`;
|
||||
|
||||
SELECT COUNT(*) AS entries_for_run
|
||||
FROM `Results`
|
||||
WHERE run_id = -- your desired run_id here
|
||||
2937;
|
||||
|
||||
|
||||
ALTER TABLE `Runs`
|
||||
ADD COLUMN grossrate DOUBLE GENERATED ALWAYS AS (
|
||||
(
|
||||
CASE
|
||||
WHEN pam_level = 4 THEN 2.0
|
||||
WHEN pam_level = 6 THEN 2.5
|
||||
WHEN pam_level = 8 THEN 3.0
|
||||
ELSE FLOOR(LOG2(pam_level) * 10) / 10
|
||||
END
|
||||
) * symbolrate
|
||||
) STORED;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
SELECT
|
||||
JSON_EXTRACT(voa_class, '$.atten_state[1]') AS atten_state_second
|
||||
FROM Runs
|
||||
WHERE run_id = 1000;
|
||||
|
||||
SELECT DISTINCT
|
||||
run_id
|
||||
FROM Results r
|
||||
WHERE date_of_processing > '2025-11-14 12:00:00';
|
||||
|
||||
SELECT DISTINCT
|
||||
symbolrate
|
||||
FROM Runs
|
||||
WHERE pam_level = 4
|
||||
AND symbolrate IS NOT NULL
|
||||
ORDER BY symbolrate;
|
||||
|
||||
|
||||
SELECT DISTINCT
|
||||
wavelength
|
||||
FROM Runs
|
||||
|
||||
SELECT
|
||||
run_id,
|
||||
COUNT(DISTINCT eq_id) AS unique_eq_count,
|
||||
COUNT(*) AS entries_for_run
|
||||
FROM `Results`
|
||||
WHERE run_id IS NOT NULL
|
||||
GROUP BY run_id
|
||||
ORDER BY run_id;
|
||||
|
||||
|
||||
SELECT
|
||||
COUNT(DISTINCT eq_id) AS unique_eq_count,
|
||||
COUNT(*) AS entries_for_run
|
||||
FROM `Results`
|
||||
WHERE run_id = -- your run_id here
|
||||
2936;
|
||||
|
||||
SELECT
|
||||
run_id,
|
||||
COUNT(DISTINCT eq_id) AS unique_eq_count
|
||||
FROM `Results`
|
||||
WHERE run_id IS NOT NULL
|
||||
GROUP BY run_id
|
||||
ORDER BY run_id;
|
||||
|
||||
|
||||
SELECT DISTINCT
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
e.eq,
|
||||
e.mlse
|
||||
FROM Results AS r
|
||||
JOIN Equalizer AS e USING (eq_id)
|
||||
WHERE r.run_id = -- your run_id here
|
||||
2731
|
||||
ORDER BY r.run_id, r.eq_id
|
||||
|
||||
|
||||
|
||||
|
||||
SELECT DISTINCT
|
||||
r.run_id
|
||||
FROM Results AS r
|
||||
JOIN Runs AS u
|
||||
ON r.run_id = u.run_id
|
||||
WHERE u.pam_level = 6
|
||||
ORDER BY r.run_id;
|
||||
|
||||
-- older than aug 2025
|
||||
CREATE OR REPLACE VIEW dashboard_old AS
|
||||
SELECT
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
|
||||
-- extract the DIR field from the JSON in e.MLSE
|
||||
MAX(JSON_UNQUOTE(JSON_EXTRACT(e.MLSE, '$.DIR'))) AS DIR,
|
||||
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode,
|
||||
|
||||
-- accumulated dispersion in ps
|
||||
0.09 * u.fiber_length * (u.wavelength - 1310) AS accumulated_dispersion,
|
||||
|
||||
-- BER & new averages
|
||||
AVG(r.BER) AS avg_BER,
|
||||
MAX(r.SNR) AS max_SNR,
|
||||
MAX(r.GMI) AS max_GMI,
|
||||
AVG(r.Alpha) AS avg_Alpha,
|
||||
|
||||
MIN(r.BER) AS min_BER,
|
||||
AVG(r.BER_precoded) AS avg_BER_precoded,
|
||||
MIN(r.BER_precoded) AS min_BER_precoded,
|
||||
COUNT(*) AS num_occurrences
|
||||
FROM Results AS r
|
||||
JOIN Runs AS u ON r.run_id = u.run_id
|
||||
JOIN Equalizer AS e ON r.eq_id = e.eq_id
|
||||
WHERE r.eq_id IS NOT NULL
|
||||
AND r.date_of_processing < '2025-08-01 00:00:00'
|
||||
GROUP BY
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode
|
||||
ORDER BY
|
||||
r.run_id,
|
||||
r.eq_id;
|
||||
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW dashboard_new AS
|
||||
SELECT
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
|
||||
-- extract the DIR field from the JSON in e.MLSE
|
||||
MAX(JSON_UNQUOTE(JSON_EXTRACT(e.MLSE, '$.DIR'))) AS DIR,
|
||||
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode,
|
||||
|
||||
-- accumulated dispersion in ps
|
||||
0.09 * u.fiber_length * (u.wavelength - 1310) AS accumulated_dispersion,
|
||||
|
||||
-- BER & new averages
|
||||
AVG(r.BER) AS avg_BER,
|
||||
MAX(r.SNR) AS max_SNR,
|
||||
MAX(r.GMI) AS max_GMI,
|
||||
AVG(r.Alpha) AS avg_Alpha,
|
||||
|
||||
MIN(r.BER) AS min_BER,
|
||||
AVG(r.BER_precoded) AS avg_BER_precoded,
|
||||
MIN(r.BER_precoded) AS min_BER_precoded,
|
||||
COUNT(*) AS num_occurrences
|
||||
FROM Results AS r
|
||||
JOIN Runs AS u ON r.run_id = u.run_id
|
||||
JOIN Equalizer AS e ON r.eq_id = e.eq_id
|
||||
WHERE r.eq_id IS NOT NULL
|
||||
AND r.date_of_processing >= '2025-08-01 00:00:00'
|
||||
GROUP BY
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode
|
||||
ORDER BY
|
||||
r.run_id,
|
||||
r.eq_id;
|
||||
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW dashboard_ungrouped_alltime AS
|
||||
SELECT
|
||||
r.result_id,
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
u.bitrate,
|
||||
u.grossrate,
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode,
|
||||
u.rop_attenuation,
|
||||
-- accumulated dispersion in ps
|
||||
0.07 * u.fiber_length * (u.wavelength - 1310) AS accumulated_dispersion,
|
||||
r.date_of_processing,
|
||||
r.numBits,
|
||||
r.numBitErr,
|
||||
r.BER,
|
||||
r.numBitErr_precoded,
|
||||
r.BER_precoded,
|
||||
r.STD,
|
||||
r.STDrx,
|
||||
r.GMI,
|
||||
r.AIR,
|
||||
r.EVM,
|
||||
r.Alpha
|
||||
FROM Results AS r
|
||||
JOIN Runs AS u ON r.run_id = u.run_id
|
||||
JOIN Equalizer AS e ON r.eq_id = e.eq_id
|
||||
WHERE r.eq_id IS NOT NULL;
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW dashboard_ungrouped_aug_nov_2025 AS
|
||||
SELECT
|
||||
r.result_id,
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
u.bitrate,
|
||||
u.grossrate,
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode,
|
||||
u.rop_attenuation,
|
||||
-- accumulated dispersion in ps
|
||||
0.07 * u.fiber_length * (u.wavelength - 1310) AS accumulated_dispersion,
|
||||
r.date_of_processing,
|
||||
r.numBits,
|
||||
r.numBitErr,
|
||||
r.BER,
|
||||
r.numBitErr_precoded,
|
||||
r.BER_precoded,
|
||||
r.STD,
|
||||
r.STDrx,
|
||||
r.GMI,
|
||||
r.AIR,
|
||||
r.EVM,
|
||||
r.Alpha
|
||||
FROM Results AS r
|
||||
JOIN Runs AS u ON r.run_id = u.run_id
|
||||
JOIN Equalizer AS e ON r.eq_id = e.eq_id
|
||||
WHERE r.eq_id IS NOT NULL
|
||||
AND r.date_of_processing >= '2025-08-01 00:00:00'
|
||||
AND r.date_of_processing < '2025-11-14 00:00:00';
|
||||
|
||||
|
||||
-- Das waren meine ehemals besten BERs, im Nov habe ich ML-based hinzugefügt und
|
||||
-- das Rx Filter nochmal sehr eng gestellt, das war inbesondere bei geringeren Raten sehr hilfreich um
|
||||
-- out.of-band noise zu filtern -> BER ging ja teilweise runter und wieder hoch...
|
||||
CREATE OR REPLACE VIEW dashboard_ungrouped_aug_nov_2025 AS
|
||||
SELECT
|
||||
r.result_id,
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
u.bitrate,
|
||||
u.grossrate,
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode,
|
||||
u.rop_attenuation,
|
||||
-- accumulated dispersion in ps
|
||||
0.07 * u.fiber_length * (u.wavelength - 1310) AS accumulated_dispersion,
|
||||
r.date_of_processing,
|
||||
r.numBits,
|
||||
r.numBitErr,
|
||||
r.BER,
|
||||
r.numBitErr_precoded,
|
||||
r.BER_precoded,
|
||||
r.STD,
|
||||
r.STDrx,
|
||||
r.GMI,
|
||||
r.AIR,
|
||||
r.EVM
|
||||
FROM Results AS r
|
||||
JOIN Runs AS u ON r.run_id = u.run_id
|
||||
JOIN Equalizer AS e ON r.eq_id = e.eq_id
|
||||
WHERE r.eq_id IS NOT NULL
|
||||
AND r.date_of_processing >= '2025-08-01 00:00:00'
|
||||
AND r.date_of_processing < '2025-11-14 00:00:00';
|
||||
|
||||
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW dashboard_ungrouped_old AS
|
||||
SELECT
|
||||
r.result_id,
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode,
|
||||
-- accumulated dispersion in ps
|
||||
0.07 * u.fiber_length * (u.wavelength - 1310) AS accumulated_dispersion,
|
||||
r.date_of_processing,
|
||||
r.numBits,
|
||||
r.numBitErr,
|
||||
r.BER,
|
||||
r.numBitErr_precoded,
|
||||
r.BER_precoded,
|
||||
r.STD,
|
||||
r.STDrx,
|
||||
r.GMI,
|
||||
r.AIR,
|
||||
r.EVM
|
||||
FROM Results AS r
|
||||
JOIN Runs AS u ON r.run_id = u.run_id
|
||||
JOIN Equalizer AS e ON r.eq_id = e.eq_id
|
||||
WHERE r.eq_id IS NOT NULL
|
||||
AND r.date_of_processing < '2025-08-01 00:00:00';
|
||||
|
||||
CREATE OR REPLACE VIEW dashboard_ungrouped_during_ecoc AS
|
||||
SELECT
|
||||
r.result_id,
|
||||
r.run_id,
|
||||
r.eq_id,
|
||||
e.equalizer_structure,
|
||||
u.symbolrate,
|
||||
u.pam_level,
|
||||
u.wavelength,
|
||||
u.fiber_length,
|
||||
u.db_mode,
|
||||
-- accumulated dispersion in ps
|
||||
0.07 * u.fiber_length * (u.wavelength - 1310) AS accumulated_dispersion,
|
||||
r.date_of_processing,
|
||||
r.numBits,
|
||||
r.numBitErr,
|
||||
r.BER,
|
||||
r.numBitErr_precoded,
|
||||
r.BER_precoded,
|
||||
r.STD,
|
||||
r.STDrx,
|
||||
r.GMI,
|
||||
r.AIR,
|
||||
r.EVM
|
||||
FROM Results AS r
|
||||
JOIN Runs AS u ON r.run_id = u.run_id
|
||||
JOIN Equalizer AS e ON r.eq_id = e.eq_id
|
||||
WHERE r.eq_id IS NOT NULL
|
||||
AND r.date_of_processing > '2025-09-20 00:00:00';
|
||||
|
||||
|
||||
SELECT COUNT(*)
|
||||
FROM `dashboard_ungrouped`
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW power_state_info AS
|
||||
SELECT
|
||||
run_id,
|
||||
|
||||
power_laser AS power_laser,
|
||||
|
||||
power_rop AS power_mzm,
|
||||
|
||||
-- new power_rop first
|
||||
power_pd_in
|
||||
+ CAST(voa_class->>'$.atten_state[1]' AS DECIMAL(12,6))
|
||||
AS power_rop,
|
||||
|
||||
-- then voa_atten
|
||||
CAST(voa_class->>'$.atten_state[1]' AS DECIMAL(12,6))
|
||||
AS voa_atten,
|
||||
|
||||
-- then the photodiode input power
|
||||
power_pd_in AS power_pd_in,
|
||||
|
||||
-- appended columns
|
||||
wavelength,
|
||||
pam_level,
|
||||
db_mode,
|
||||
is_mpi,
|
||||
fiber_length
|
||||
|
||||
FROM Runs;
|
||||
Reference in New Issue
Block a user