sql >> Database >  >> RDS >> Mysql

SQL-query van meerdere waarden in één cel

Gebruik FIND_IN_SET om iets te zoeken in een door komma's gescheiden lijst.

SELECT i.MemberID, i.MemberName, GROUP_CONCAT(c.Course) AS CoursesInterested
FROM CourseInterests AS i
JOIN Course AS c ON FIND_IN_SET(c.CourseId, i.CoursesInterested)

Het is echter beter om een ​​relatietabel te maken in plaats van de cursussen in een enkele kolom op te slaan. Dit type join kan niet worden geoptimaliseerd met behulp van een index, dus het zal duur zijn voor een grote tafel.



  1. Kolom _ID bestaat niet fout hoewel het in tabel bestaat

  2. Een MySQL- of MariaDB-server voorbereiden voor productie - deel twee

  3. Oracle Regexp om \n,\r en \t te vervangen door spatie

  4. 3 manieren om HEX naar INT te converteren in SQL Server (T-SQL)