Database
 sql >> Database >  >> RDS >> Database

Come commentare in SQL

Problema:

Vorresti inserire dei commenti nel tuo codice SQL.

Esempio:

Ecco il codice di esempio:

SELECT
  name,
  COUNT(*) AS count_items
FROM products
GROUP BY name
HAVING COUNT(*) > 5
ORDER BY name DESC;

Soluzione 1:

Utilizzo --. Ecco come appare:

-- product names along with the number of items
-- products ordered by name in descending order
SELECT
  name,
  COUNT(*) -- AS count_items
FROM products
GROUP BY name
-- HAVING COUNT(*) > 5
ORDER BY name DESC;

Discussione:

Puoi scrivere commenti a riga singola in SQL usando --. Dopo il --, puoi scrivere qualsiasi commento che desideri purché sia ​​in una riga. Se desideri scrivere un commento su più righe, puoi utilizzare -- all'inizio di ogni riga di commento, proprio come nell'esempio:

-- product names along with the number of items
-- products ordered by name in descending order

Puoi anche usare -- per commentare un'intera riga di codice o una parte di una riga da un punto al centro della riga fino alla fine della riga. Ad esempio, puoi commentare AS count_item s ma lascia il COUNT(*) dentro.

COUNT(*) -- AS count_items

Nota che quando usi --, commenti il ​​codice fino alla fine della riga, quindi non puoi usare -- per commentare, ad esempio, solo la parola chiave AS. Se vuoi farlo, dai un'occhiata alla Soluzione 2.

Soluzione 2:

Usa /*...*/ . Ecco come appare:

/* product names along with the number of items
   this time, the products aren't sorted */
SELECT
  name,
  COUNT(*) /*AS*/ count_items
FROM products
GROUP BY name
/* HAVING COUNT(*) > 5
ORDER BY name DESC */;

Discussione:

/*...*/ è molto più potente di --. Con /*...*/ , puoi commentare qualsiasi parte del codice che desideri. Il commento può essere multilinea e puoi decidere dove finisce. Basta scrivere /* all'inizio del commento e */ alla fine.

Ad esempio, puoi commentare una singola parola del codice, come AS parola chiave:

COUNT(*) /*AS*/ count_items

Oppure puoi commentare due righe ma lasciare comunque il punto e virgola alla fine:

/* HAVING COUNT(*) > 5
ORDER BY name DESC */;