Outils pour utilisateurs

Outils du site


informatique:sql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
informatique:sql [13/04/2024 14:21] cyrilleinformatique:sql [24/08/2025 09:12] (Version actuelle) – [Manipulons ce qui n'est pas] cyrille
Ligne 24: Ligne 24:
   * [[https://sql.sh/cours/jointures|Jointure SQL]] pas Sql.sh   * [[https://sql.sh/cours/jointures|Jointure SQL]] pas Sql.sh
   * [[https://www.dofactory.com/sql/join|{{https://www.dofactory.com/Images/sql-joins.png|SQL Join tutorial}}]] by Dofactory   * [[https://www.dofactory.com/sql/join|{{https://www.dofactory.com/Images/sql-joins.png|SQL Join tutorial}}]] by Dofactory
 +
 +Et pour un ''update'' avec un ''join'' :
 +
 +<code sql>
 +UPDATE `table_a` a 
 + LEFT JOIN `table_b` b ON a.id = b.id  
 + SET a.password = 'abcdef'
 + WHERE b.id = 195812
 +</code>
  
 ==== Données Hiérarchiques (Nested Categories) ==== ==== Données Hiérarchiques (Nested Categories) ====
Ligne 95: Ligne 104:
 **Réponse** **Réponse**
  
 +<code sql>
 SELECT s.id, s.name AS nom_station, dates.measured_at SELECT s.id, s.name AS nom_station, dates.measured_at
 FROM stations s FROM stations s
Ligne 103: Ligne 113:
 WHERE m.station_id IS NULL WHERE m.station_id IS NULL
 ORDER BY s.id, dates.measured_at; ORDER BY s.id, dates.measured_at;
 +</code>
 +
 +** Question **
 +
 +Dans la bdd de [[https://www.sympa.community/|Sympa]], comment supprimer les abonnés à des listes qui n'existent pas/plus ?
 +
 +Et contourner l'erreur "Error 1093: You can't specify target table for update in FROM clause".
 +
 +** Réponse **
 +
 +<code sql>
 +delete T1 FROM subscriber_table as T1 join (
 + select st.list_subscriber from subscriber_table st 
 + left join list_table lt on lt.name_list = st.list_subscriber
 + where lt.name_list is null
 + group by st.list_subscriber
 +) as T2 on T2.list_subscriber = T1.list_subscriber ;
 +</code>
  
 ==== Insertions ==== ==== Insertions ====
Ligne 162: Ligne 190:
 ; ;
 </code> </code>
 +
 +==== Supprimer dans plusieurs tables ====
 +
 +Supprimer les lignes dans les tables wp2r_posts et wp2r_postmeta :
 +
 +<code sql>
 +DELETE m , p
 +FROM wp2r_posts p INNER JOIN wp2r_postmeta m 
 +WHERE m.post_id= p.ID
 +and p.post_type="custom_post_type"
 +</code>
 +
 +
 ===== Tools ===== ===== Tools =====
  
informatique/sql.1713010873.txt.gz · Dernière modification : de cyrille

Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki