Czy ktoś wie, czy Firebird 2.5 ma funkcję podobną do funkcji "STUFF" w SQL? Mam tabelę, która zawiera nadrzędne rekordy użytkownika i inną tabelę, która zawiera rekordy użytkownika podrzędnego związane z nadrzędnego. Chciałbym móc przeciągnąć rozdzielany przecinkami ciąg "ROLES", którego użytkownik używa, bez konieczności korzystania z drugiego zapytania, pętli ponad wartościami zwracanymi dla danego ID i tworzenia ciągu znaków samodzielnie.Firebird 2.5 - funkcja równoważna funkcji STUFF w języku SQL (GROUP_CONCAT w MySql/LISTAGG w Oracle)
Poszukuję innych powiązanych pytań, ale nie znalazłem żadnych. Pytanie w tym linku: string equivalent of Sum to concatenate jest zasadniczo tym, co chcę zrobić, ale z bazą danych Firebird 2.5.
NIESAMOWITE !!!! Dziękuję bardzo StuartLC Nie wiedziałem o tej funkcji. Działa idealnie! Przyjmę poprawną odpowiedź, gdy tylko na to pozwoli. – Phil
Co z zamawianiem? Powiedzmy, że potrzebuję nazwisk rodziców i dzieci w kolejności alfabetycznej, jeśli dodaję "ORDER BY p.Name, c.Name) Otrzymuję ten błąd:" Nieprawidłowe wyrażenie w klauzuli ORDER BY (nie zawarte ani w funkcji agregującej ani w klauzula GROUP BY) "ze względu na obecność c.Nazwa w klauzuli kolejność.Czy istnieje sposób na rozwiązanie tego problemu? – Bozzy
@Bozzy może być w stanie wpływać na zamówienie przez wykonanie uporządkowanej pre-projekcji w wyprowadzonej tabeli . Zaktualizowałem odpowiedź. – StuartLC