mirror of
https://github.com/flibusta-apps/book_library_server.git
synced 2025-12-06 15:15:36 +01:00
Fix authors search
This commit is contained in:
@@ -17,11 +17,9 @@ SELECT ARRAY(
|
|||||||
) as sml,
|
) as sml,
|
||||||
(
|
(
|
||||||
SELECT count(*) FROM book_authors
|
SELECT count(*) FROM book_authors
|
||||||
LEFT JOIN books
|
LEFT JOIN books ON (books.id = book)
|
||||||
ON (books.id = book AND
|
WHERE author = authors.id AND books.is_deleted = 'f'
|
||||||
books.is_deleted = 'f' AND
|
AND books.lang = ANY(:langs ::text[])
|
||||||
books.lang = ANY(:langs ::text[]))
|
|
||||||
WHERE author = authors.id
|
|
||||||
) as books_count
|
) as books_count
|
||||||
FROM authors
|
FROM authors
|
||||||
WHERE (
|
WHERE (
|
||||||
@@ -31,11 +29,9 @@ SELECT ARRAY(
|
|||||||
) AND
|
) AND
|
||||||
EXISTS (
|
EXISTS (
|
||||||
SELECT * FROM book_authors
|
SELECT * FROM book_authors
|
||||||
LEFT JOIN books
|
LEFT JOIN books ON (books.id = book)
|
||||||
ON (books.id = book AND
|
WHERE author = authors.id AND books.is_deleted = 'f'
|
||||||
books.is_deleted = 'f' AND
|
AND books.lang = ANY(:langs ::text[])
|
||||||
books.lang = ANY(:langs ::text[]))
|
|
||||||
WHERE author = authors.id
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
SELECT fauthors.id FROM filtered_authors as fauthors
|
SELECT fauthors.id FROM filtered_authors as fauthors
|
||||||
@@ -57,11 +53,9 @@ WITH filtered_authors AS (
|
|||||||
SELECT id FROM authors
|
SELECT id FROM authors
|
||||||
WHERE EXISTS (
|
WHERE EXISTS (
|
||||||
SELECT * FROM book_authors
|
SELECT * FROM book_authors
|
||||||
LEFT JOIN books
|
LEFT JOIN books ON (books.id = book)
|
||||||
ON (books.id = book AND
|
WHERE author = authors.id AND books.is_deleted = 'f'
|
||||||
books.is_deleted = 'f' AND
|
AND books.lang = ANY(:langs ::text[])
|
||||||
books.lang = ANY(:langs ::text[]))
|
|
||||||
WHERE author = authors.id
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
SELECT id FROM filtered_authors
|
SELECT id FROM filtered_authors
|
||||||
|
|||||||
@@ -10,21 +10,17 @@ SELECT ARRAY (
|
|||||||
similarity(name, :query) as sml,
|
similarity(name, :query) as sml,
|
||||||
(
|
(
|
||||||
SELECT count(*) FROM book_sequences
|
SELECT count(*) FROM book_sequences
|
||||||
LEFT JOIN books
|
LEFT JOIN books ON (books.id = book)
|
||||||
ON (books.id = book AND
|
WHERE sequence = sequences.id AND books.is_deleted = 'f'
|
||||||
books.is_deleted = 'f' AND
|
AND books.lang = ANY(:langs ::text[])
|
||||||
books.lang = ANY(:langs ::text[]))
|
|
||||||
WHERE sequence = sequences.id
|
|
||||||
) as books_count
|
) as books_count
|
||||||
FROM sequences
|
FROM sequences
|
||||||
WHERE name % :query AND
|
WHERE name % :query AND
|
||||||
EXISTS (
|
EXISTS (
|
||||||
SELECT * FROM book_sequences
|
SELECT * FROM book_sequences
|
||||||
LEFT JOIN books
|
LEFT JOIN books ON (books.id = book)
|
||||||
ON (books.id = book AND
|
WHERE sequence = sequences.id AND books.is_deleted = 'f' AND
|
||||||
books.is_deleted = 'f' AND
|
books.lang = ANY(:langs ::text[])
|
||||||
books.lang = ANY(:langs ::text[]))
|
|
||||||
WHERE sequence = sequences.id
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
SELECT fsequences.id FROM filtered_sequences as fsequences
|
SELECT fsequences.id FROM filtered_sequences as fsequences
|
||||||
|
|||||||
@@ -17,11 +17,9 @@ SELECT ARRAY(
|
|||||||
) as sml,
|
) as sml,
|
||||||
(
|
(
|
||||||
SELECT count(*) FROM translations
|
SELECT count(*) FROM translations
|
||||||
LEFT JOIN books
|
LEFT JOIN books ON (books.id = book)
|
||||||
ON (books.id = book AND
|
WHERE author = authors.id AND books.is_deleted = 'f' AND
|
||||||
books.is_deleted = 'f' AND
|
books.lang = ANY(:langs ::text[])
|
||||||
books.lang = ANY(:langs ::text[]))
|
|
||||||
WHERE author = authors.id
|
|
||||||
) as books_count
|
) as books_count
|
||||||
FROM authors
|
FROM authors
|
||||||
WHERE (
|
WHERE (
|
||||||
@@ -31,11 +29,9 @@ SELECT ARRAY(
|
|||||||
) AND
|
) AND
|
||||||
EXISTS (
|
EXISTS (
|
||||||
SELECT * FROM translations
|
SELECT * FROM translations
|
||||||
LEFT JOIN books
|
LEFT JOIN books ON (books.id = book)
|
||||||
ON (books.id = book AND
|
WHERE author = authors.id AND books.is_deleted = 'f' AND
|
||||||
books.is_deleted = 'f' AND
|
books.lang = ANY(:langs ::text[])
|
||||||
books.lang = ANY(:langs ::text[]))
|
|
||||||
WHERE author = authors.id
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
SELECT fauthors.id FROM filtered_authors as fauthors
|
SELECT fauthors.id FROM filtered_authors as fauthors
|
||||||
|
|||||||
Reference in New Issue
Block a user