![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 20.03.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Mój ojciec zaczął ostatnio używać do programowania w Visual Basicu bazy danych SQL. Poprosił mnie, żebym zapytał na forum o taką rzecz:
- w tabeli znajduje się dużo pól, dajmy na to 20, mają one różne nazwy, np.: aaa, bbb, ccc, itd., - tata chce zrobić wyszukiwanie w swojej bazie, korzystające z LIKE. Czy jest jakieś zapytanie, gdzie po przecinku wypisywałoby się pola, które chce się przeszukać, a działałoby ono, jak LIKE? Takie coś: "aaa LIKE 'xxx' OR bbb LIKE 'xxx' OR ccc LIKE 'xxx'" zupełnie mu nie pasuje. Chciałby to jakoś wszystko uporządkować. Proszę pomóżcie! Bo stary nie daje mi spokoju ![]() -------------------- Cod | codslfc@o2.pl | gg#1405724 | www.footbag.p2.pl
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
http://www.mysql.com/doc/en/Fulltext_Search.html - moze pomoze
![]() -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 24.02.2003 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli dobrze cie zrozumiałem to chcesz aby wyszukiwał w paru polach tego samego??
spubuj tak Kod SELECT * FROM tabela WHERE (aaa LIKE "$ble" || bbb LIKE "$ble")
jeżeli dobrze cie zrozumiałem to tak to wygląda -------------------- nr gg:2966211
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 208 Pomógł: 0 Dołączył: 19.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
W php byś musiał użyć funkcji explode...
[php:1:cb968f3898]<?php $gdzie_szukac = 'aaa, bbb, ccc, ddd, eee'; $co_szukac = 'jakaś fraza'; $where = explode( ', ', $gdzie_szukac ); $where_clouse = ''; $i = 0; foreach( $where AS $field ) { $spacer = $i == ( count( $where ) - 1 ) ? '' : ' || '; $where_clouse .= $field . ' LIKE '%' . $co_szukac . '%'' . $spacer; $i++; } $sql = 'SELECT * FROM nazwa_tabeli WHERE ( ' . $where_clouse . ' ) ORDER BY aaa ASC LIMIT 10'; $r = mysql_query( $sql ); while( $row = mysql_fetch_array( $r ) ) { echo 'aaa : ' . $row['aaa'] . '<br />'; } ?>[/php:1:cb968f3898] |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 208 Pomógł: 0 Dołączył: 19.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
a przeczytałeś jakie on zadał pytanie?
Cytat Czy jest jakieś zapytanie, gdzie po przecinku wypisywałoby się pola, które chce się przeszukać, a działałoby ono, jak LIKE?
no to są wpisywane w zmiennej (gdzie_szukac) po przecinku (', ') nazwy pól i te przeszukuje ![]() Jeżeli o to mu w tym chodzi... |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 20.03.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ten skrypcik php jest bardzo fajny i na pewno by zadziałał, ale ojciec używa Visual Basica! Polaczek: To też na pewno by zadziałało, ale nam jest potrzebne zapytanie, w którym pola wypisujesz po przecinku. Coś podobnego jest chyba w IN: "SELECT "xxx" IN (aaa,bbb,ccc,nnn)", ale on musi mieć takie coś z LIKE. Mimo wszystko dziękuję za poświęcony mi czas
![]() ![]() Cytat http://www.mysql.com/doc/en/Fulltext_Search.html - moze pomoze
![]() O! Dzięki za tego linka! Nie zauważyłem go na początku. Zobaczymy, czy działa, to co tam napisali ![]() -------------------- Cod | codslfc@o2.pl | gg#1405724 | www.footbag.p2.pl
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 05:02 |