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 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; +---------------------------------------------------------------------------------------------------------------------------------------- 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;