חיבור שני משפטי SQL בVB

ed is dead

New member
חיבור שני משפטי SQL בVB

יש לי שני משפטי SQL שהגדרתי ככה
que_phone = "select * from customers where phone like '*" & txtPhones & "*'" que_code = " select * from customers where cus_id=" & txtIds​
איך אני יכול לאחד אותם? ככה אני "ממש" משפט SQL
Set rsc = db.OpenRecordset(que)​
לפי מה שהבנתי צריך להשתמש בפונקציה INTERSECT, אבל לא הבנתי איך להכניס אותו ניסיתי בכמה וריאציות ולא הצלחתי(ניסיתי להכניס אותו ב set rsc) תודה מראש
 

MaD-d0g

New member
בצורה מאוד פשוטה

תשתמש ב AND
sqlstr = "select * from customers where phone like '*" & txtPhones & "*' and cus_id=" & txtIds​
 

ed is dead

New member
הבעיה היא ש

אני עושה אפשרויות מיון בתוכנה ועכשיו באפשרויות מיון אני ממלא עם CHECKBOOK לפי מה אני רוצה למיין, ואז אני צריך לעשות את הערבוב הזה בששביל לחסוך בקוד אפשר אחרת וקצת יותר מוגבלת שחשבתי לעשות זה שימוש בoption buttons או radio(אנ לא סגור לגבי איך קוראים להם) ואז זה יחסוך ממני את את הבעיה. התוכנה הזאת היא בשביל פרוייקט ביצר, והcheckbox הוא מתוחכם יותר לכן רציתי להשתמש בו..
 

ארזירון

New member
מיון או סינון?

כי WHERE זה לסנן, order by זה למיין....ואתה יכול לבנות את התנאי שלך באופן דינאמי על ידי מה שנבחר:
sql = "select .... " where = "" if check1 then where = " cus_id = '" & cus_id & "'" end if if check2 then if where <> "" then where = where & " and " where = where & " cus_name = '" & cus_name & "'" end if if where <> "" then sql = sql & " WHERE " & where​
ואם נתרגם, אז בודקים את התנאי הראשון, אם סומן ה-checkbox אז משרשרים תנאי, כולל ערך. בודקים את התנאי השני. אם סומן ה-checkbox אז בודקים אם היה תנאי קודם. אם היה מוסיפים AND, אם לא, פשוט משרשרים תנאי. אפשר להמשיך ככה לפי מספר התנאים שיש לך. בסוף, בודקים אם היה תנאי כלשהו. אם כן, משרשרים את התנאים לשאילתה עצמה, אם לא ממשיכים בלי תנאים. את אותו עיקרון אפשר ליישם גם עם מיון, רק השרשור עצמו יהיה קצת שונה.
 

ed is dead

New member
תודה רבה! מה שהייתי צריך

חשבתי על לעשות את זה, רק שהסתבכתי קצת עם הכתיבה של זה בכלל החיבור.. תודה על הרעיון!
 
למעלה