GRY-Online.pl --> Archiwum Forum

Pomoc z zapytaniem MS SQL 2005

06.07.2007
21:22
[1]

Lozano23 [ Centurion ]

Pomoc z zapytaniem MS SQL 2005

Sprawa wygląda tak. Chcę wyszukać w bazie danych rekordy po:
- nazwie użytkownika
- po treści tytułu rekordu

Używam procedury składowej.
Teraz użytkownik może wprowadzić tylko nazwę użytkownika, tylko szukany tekst albo i to, i to.
Nie wiem jak podejść to od strony technicznej. Czy mam napisać warunek w procedurze i dla każdego warunku osobny select robić, czy da się to jakoś sprytniej zrobić?

Moje - zapewne niepoprawne/na około - rozwiązanie:
- wprowadzamy parametry @author, @search_text
- sprawdzamy czy @auhor <> NULL i @search_text = NULL
----odpowiednie zapytanie
- sprawdzamy czy @author = NULL i @search_text <> NULL
----odpowiednie zapytanie
- sprawdzamy czy @author i @search_text <> NULL

Może jakoś można to sprytniej obejść?

Dziękuję serdecznie za pomoc :)

06.07.2007
21:28
[2]

Hansvonb [ Konsul ]

A nie wystarczy:


select *
from tabela
where author = @par1 or search_text = @par2


ważne jest tylko aby przekazane do SQLa parametry miały właściwą wartość albo NULL

06.07.2007
21:35
[3]

Lozano23 [ Centurion ]

Tylko wtedy, gdy np. wprowadzę autora oraz szukany tekst, to dostaję rekordy z szukanym tekstem, ale wszystkich autorów

06.07.2007
21:41
[4]

Hansvonb [ Konsul ]

Oczywiście.

Pytanie co chcesz znaleźć ?

06.07.2007
21:44
[5]

Lozano23 [ Centurion ]

Coś takiego chcę zrobić jak wyszukiwarka tutaj na forum.
1. Wprowadzasz autora - wyświetla wszystko autora
2. Wprowadzasz tekst - wyświetla rekordy z tekstem
3. Wprowadzasz to i to - wyświetla rekordy z tekstem użytkownika

06.07.2007
22:18
[6]

Lozano23 [ Centurion ]

^

06.07.2007
22:41
[7]

Lozano23 [ Centurion ]

^

© 2000-2024 GRY-OnLine S.A.