sql >> Databasteknik >  >> RDS >> Mysql

Sammanfoga en sträng och ett nummer i MySQL

Det finns ett par metoder vi kan använda för att sammanfoga strängar och nummer i MySQL.

  • Vi kan använda CONCAT() funktion, som sammanfogar dess argument.
  • Vi kan använda rörsammansättningsoperatorn (|| ), som sammanfogar dess operander.

Nedan finns exempel på var och en.

CONCAT() Funktion

CONCAT() funktion sammanfogar sina argument. Även om detta är en strängfunktion kan den hantera numeriska (och binära strängar) argument. Alla numeriska värden konverteras till dess ekvivalenta icke-binära strängform.

Exempel:

SELECT CONCAT('Player', 456);

Resultat:

Player456

Vi kan inkludera ett mellanslag, antingen genom att lägga till ett mellanslag i den befintliga strängen eller genom att sammanfoga ett tredje argument som enbart består av ett mellanslag:

SELECT 
    CONCAT('Player ', 456) AS "Option 1",
    CONCAT('Player', ' ', 456) AS "Option 2";

Resultat:

+------------+------------+
| Option 1   | Option 2   |
+------------+------------+
| Player 456 | Player 456 |
+------------+------------+

Rörsammansättningsoperatören (|| )

Det här exemplet använder sammanlänkningsoperatorn (|| ):

SELECT 'Player ' || 456;

Resultat:

Player 456

I det här fallet lade jag till ett blanksteg till det första argumentet.

Observera att rörsammansättningsoperatören först måste aktiveras innan du kan använda den på detta sätt. Som standard är || är en synonym till OR logisk operator (även om denna är utfasad). Att försöka använda den som en sammanlänkningsoperator kan ge oväntade resultat om du inte aktiverar den som en sammanlänkningsoperator först.


  1. exempel på oracle join syntax

  2. Bästa nya funktioner i PostgreSQL 14

  3. Varför går SQL-id-sekvenser ur synk (särskilt med Postgres)?

  4. Dela upp kommaseparerade värden i kolumner till flera rader i SQL Server