PDA

View Full Version : انتخاب يك متن داخل متن ديگر به روش برعكس



ahmad1358
دوشنبه 04 مرداد 1389, 01:46 صبح
با سلا من ميخوام يه متن رو داخل يه متن ديگه جستجو كنم ولي نميخوام از دستور Contains استفاده بشه آيا راهي وجود داره : يه مثال ميزنم ميخوام ببينم تمام ركوردهايي كه فيلدx آنها شامل Ali hassan است را پيدا كنم. حالا اگه يه ركورد فيلد x آن به صورت Ali hassan jamal بود انتخاب شود و ركوردي كه فيلد x آن Ali reza باشد انتخاب نشود.

يا اگه ميشه يه الگوريتمي بدين كه بشه ساختار درخت دودويي رو تو sql پياده سازي كرد.
با تشكر

pezhvakco
دوشنبه 04 مرداد 1389, 08:28 صبح
درود :
دستور Like رو امتحان کردین >

WHERE (X LIKE '%Ali hassan%')

فکر خوش .

developing
دوشنبه 04 مرداد 1389, 16:20 عصر
با سلام.

همونطور که جناب pezhvakco (http://barnamenevis.org/forum/member.php?u=59994) گفتند از LIKE در دستور SELECT از دیتا بیس می توان استفاده کرد علاوه بر آن می توان در خاصیت فیلتر از Table خودتون در دلفی هم از LIKE استفاده کنید.

مثلا می توانید جستجوی خود را در بانک MyTable به شکل زیر انجام دهید


ADOTable1.Filter := 'FieldName LIKE ''%Ali hassan%'''
ADOTabel1.Filtered := True;باید حواستون باشه که خاصیت Filtered رو True کنید و هنگامی هم که نخواستید مقدار اون رو False می کنید.
FieldName هم همون فیلد مورد نظر خواهد بود.

ahmad1358
شنبه 09 مرداد 1389, 14:17 عصر
درود :
دستور Like رو امتحان کردین >

WHERE (X LIKE '%Ali hassan%')

فکر خوش .

نميگم نميشه از دستور Like استفاده كرد ولي محتوي فيد x من از محتوي Ali hassan بزرگتره مثلا ممكنه فيلد x داراي محتوي Ali hassan reza باشه ولي من ميخوام وقتي از دستورم استفاده مي كنم چون 2 يا حتي يكي از كلمات فيلد X شبيه به قسمت سمت راست كه همان Ali hassan است در جواب كوئري ما بيايد.

دستور like ‌در صورتيجواب خواهد دادكه جاي x و Ali hassan عوض شود
با تشكر

pezhvakco
شنبه 09 مرداد 1389, 19:14 عصر
پرسش ابتدایی >

يه مثال ميزنم ميخوام ببينم تمام ركوردهايي كه فيلدx آنها شامل Ali hassan است را پيدا كنم. حالا اگه يه ركورد فيلد x آن به صورت Ali hassan jamal بود انتخاب شود و ركوردي كه فيلد x آن Ali reza باشد انتخاب نشود.
پرسش کنونی >

ولي محتوي فيد x من از محتوي Ali hassan بزرگتره مثلا ممكنه فيلد x داراي محتوي Ali hassan reza باشه ولي من ميخوام وقتي از دستورم استفاده مي كنم چون 2 يا حتي يكي از كلمات فيلد X شبيه به قسمت سمت راست كه همان Ali hassan است در جواب كوئري ما بيايد.

درخواست کنونی رو درست متوجه نشدم ولی درخواست اول شما رو همون کد دستور جواب میده .


دستور like ‌در صورتيجواب خواهد دادكه جاي x و Ali hassan عوض شود
عوض بشه یعنی چی ؟
دستور LIKE وقتی با '%' استفاد میشه، همون درخواست ابتدایی شما میشه .

فکر خوش.