Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да върна 1 единичен ред данни от 2 различни таблици с динамично съдържание в sql

Ако погледнете тук:http://www.simple-talk.com/sql/t-sql-programming/concatenating-row-values-in-transact-sql/

има няколко техники, с които можете да направите това.

Приспособявайки се към вашата ситуация, ето един, който изглежда прост:

    select batch_no, LEFT(booksauthors, len(booksauthors)-1) as Authors from 
(SELECT ba.Batch_no,

      ( SELECT cast(ba1.Author_no as varchar(10)) + ','

           FROM Book_Authors ba1

          WHERE ba1.Batch_no = ba.Batch_no

          ORDER BY Author_no

            FOR XML PATH('') ) AS BooksAuthors

      FROM Book_Authors ba

      GROUP BY Batch_no )A;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Определяне на последния добавен ред, когато няма индекс

  2. Директно изпълнение на SQL; без курсор. грешка в Access 2007 VB код

  3. Създайте маса 6 x 6 с автоматично разливане от горната линия

  4. InsertAllOnSubmit вмъква само първия запис на данни

  5. Как да се свържа със SQL Server чрез sqlalchemy, използвайки удостоверяване на Windows?