From f87af4a2a4fcd918f038a534d563dcd62afc32c7 Mon Sep 17 00:00:00 2001 From: Benali <36046904+BENALI31@users.noreply.github.com> Date: Thu, 15 Dec 2022 13:53:50 +0100 Subject: [PATCH 1/3] Create recherche d'une colonne dans la base de donnes --- recherche d'une colonne dans la base de donnes | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 recherche d'une colonne dans la base de donnes diff --git a/recherche d'une colonne dans la base de donnes b/recherche d'une colonne dans la base de donnes new file mode 100644 index 0000000..892a597 --- /dev/null +++ b/recherche d'une colonne dans la base de donnes @@ -0,0 +1,10 @@ +--recherche d'une colonne dans la base de donnes +select t.owner as schema_name, + t.table_name , col.column_name +from sys.all_tab_columns col +inner join sys.all_tables t on col.owner = t.owner + and col.table_name = t.table_name +where col.column_name = 'IICORR' +--and col.owner not in ('') +order by col.owner, + col.table_name; From cb79848daf82cd09c9d39ce772394f83594b9c74 Mon Sep 17 00:00:00 2001 From: Benali <36046904+BENALI31@users.noreply.github.com> Date: Tue, 27 Jun 2023 16:40:31 +0200 Subject: [PATCH 2/3] transform_columns_to_line c'est une req qui transforme plusieurs colonnes pj1,pj2,pj3 en une Seule colonne pj avec le contenue des tois colonnes --- columns_to_line | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 columns_to_line diff --git a/columns_to_line b/columns_to_line new file mode 100644 index 0000000..62638ad --- /dev/null +++ b/columns_to_line @@ -0,0 +1,20 @@ +select +nom_prenom, +adresse, +code_postal, +ville, +date_denvoi, +type_de_travaux, +from +(SELECT +nom_prenom, +adresse, +code_postal, +ville, +date_denvoi, +type_de_travaux, + +unnest(array[pj1 ,si_pj1_autres_type ,pj2 ,si_pj2_autres_type ,pj3 ,si_pj3_autres_type ,pj4 ,si_pj4_autres_type ,pj5 ,si_pj5_autres_type ,pj6 ,si_pj6_autres_type ,pj7 ,si_pj7_autres_type ,pj8 ,si_pj8_autres_type ,pj9, si_pj9_autres_type]) AS nom_PJ +FROM synthese_publipostage) ttl + +-- ces avec Postgressql From 8ec17b2ebf2bf1395dbaed9f695e7735a221cfb1 Mon Sep 17 00:00:00 2001 From: Benali <36046904+BENALI31@users.noreply.github.com> Date: Wed, 20 Mar 2024 12:40:54 +0100 Subject: [PATCH 3/3] fonctions utiles sur oracle like LAG --- oracle | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 oracle diff --git a/oracle b/oracle new file mode 100644 index 0000000..bdb9db1 --- /dev/null +++ b/oracle @@ -0,0 +1,43 @@ +TO_CHAR(CURRENT_DATE, 'dd/MM/yyyy') -- convertir a char +TO_CHAR(CURRENT_DATE, 'dd/MM/yyyy HH:mm:ss')||';'|| +to_date(t2.date_DEBUT,'DD/MM/YYYY') -- -- convertir a date + +select FLOOR(DBMS_RANDOM.VALUE(1,12)) from dual; --- generer une valeure random + +select (sysdate + dbms_random.value(-3000,-100)) from dual; --- generer une date random + +SELECT SYS_GUID() FROM dual; ---pour generer un id unique en forme de varchar +ROW_NUMBER() OVER (ORDER BY 1)+200 --un id incremental +200 +ROW_NUMBER() OVER (ORDER BY 1) as "id" --un id incremental +((ROW_NUMBER() OVER (ORDER BY 1)*2)-1) as "id" --un id incremental impaire +(ROW_NUMBER() OVER (ORDER BY 1)*2) as "id" --un id incremental paire +-------------------------------------------------------------------------------------------------- +"ID" NUMBER GENERATED BY DEFAULT AS IDENTITY -- declaration de la colonne +-- création d'une séquence peux être intéressant aussi pour garder une incrémentation successive +--------------------------------------------------------------------------------------------- +---trouver le max ou le min de la table et continuer a incrementer !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +select max("id") over (partition by 1) + row_number() over (partition by 1 order by 1), id2 from presta; +---------------------------------------------------------------------------------------------------------------------------------------- +SELECT + f6, proj, + ROW_NUMBER() OVER (PARTITION BY f6, proj ORDER BY f6, proj) as num_occu + FROM TBD84 T84; +----------------------------------------------------------------------------------------------------------------------------------------- +'||';'||' concatenation de char +--------------------------------------------------------tester un date ------------------------------------------------------------------ +create function test_date(d varchar2) return varchar2 +is + v_date date; +begin + select to_date(d,'yyyy-mon-dd hh24:mi:ss') into v_date from dual; + return 'Valid'; + exception when others then return 'Invalid'; +end; +---------------------------------------------------------------------------------------------------------------------------------------- +select your_date_col, test_date(your_date_col) +from your_table; +---------------------------------------------------------------------------------------------------------------------------------------- +SELECT nom_du_vendeur, valeur_de_la_vente, + LAG(valeur_de_la_vente) OVER(ORDER BY valeur_de_la_vente) as valeur_de_vente_precedente +FROM vente; +----------------------------------------------------------------------------------------------------------------------------------------