sql >> Database >  >> RDS >> Database

Hoe commentaar te geven in SQL

Probleem:

U wilt enkele opmerkingen maken in uw SQL-code.

Voorbeeld:

Hier is de voorbeeldcode:

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

Oplossing 1:

Gebruik --. Zo ziet het eruit:

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

Discussie:

U kunt opmerkingen van één regel in SQL schrijven met --. Na de --, kunt u elke gewenste opmerking schrijven, zolang deze maar op één regel staat. Als u een opmerking over meerdere regels wilt schrijven, kunt u -- aan het begin van elke opmerkingsregel gebruiken, net als in het voorbeeld:

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

Je kunt ook -- gebruiken om commentaar te geven op een hele regel code of een deel van een regel vanaf een plaats in het midden van de regel tot aan het einde van de regel. U kunt bijvoorbeeld commentaar geven op AS count_item s maar laat de COUNT(*) in.

COUNT(*) -- AS count_items

Houd er rekening mee dat wanneer u --, de code aan het einde van de regel becommentarieert, zodat u -- niet kunt gebruiken om bijvoorbeeld alleen het AS-sleutelwoord te becommentariëren. Als je dit wilt doen, kijk dan eens naar Oplossing 2.

Oplossing 2:

Gebruik /*...*/ . Zo ziet het eruit:

/* 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 */;

Discussie:

/*...*/ is veel krachtiger dan --. Met /*...*/ , kunt u commentaar geven op elk deel van de code dat u wilt. De opmerking kan uit meerdere regels bestaan ​​en u kunt zelf bepalen waar deze eindigt. Schrijf gewoon /* aan het begin van de opmerking, en */ aan het einde.

U kunt bijvoorbeeld een enkel woord uit de code weglaten, zoals de AS zoekwoord:

COUNT(*) /*AS*/ count_items

Of je kunt commentaar geven op twee regels, maar de puntkomma aan het einde laten staan:

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

  1. Prestaties van JDBC batch-inserts

  2. ORA-01031:onvoldoende privileges bij het selecteren van weergave

  3. DROP TABEL INDIEN BESTAAT in SQLite

  4. java.sql.SQLException Parameterindex buiten bereik (1> aantal parameters, dat is 0)