• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Giúp mình đoạn code này với

Trao đổi về lập trình Web Forms, Javascript với ASP.NET

Moderators: vietluyen, vuathongtin

BongBong
Thành viên năng nổ
Thành viên năng nổ
Posts: 54
Joined: Thu 30/05/2013 8:09 am
Has thanked: 31 times

Giúp mình đoạn code này với

Postby BongBong » Fri 23/01/2015 2:39 pm

Mình có 1 thắc mắc như này mấy bạn giúp đỡ mình với
Mình có File tên là DSmmyy ví dụ DS0115 hay DS1214
trong đó mm : tháng
yy:năm

Các bạn giúp mình hướng code C# asp.net sao cho Nếu tìm ko được bảng của tháng hiện tại thì lùi lại tháng đến khi nào có bảng thì thôi
Ví dụ : tháng hiện tại là tháng 01 năm 2015.Nếu tìm ko ra bảng DS0115 thì lùi lại là DS1214.
Mình ko nghĩ được ra hướng code. Mình mới học và tập làm quen nên mong các bạn giúp đỡ.



BongBong
Thành viên năng nổ
Thành viên năng nổ
Posts: 54
Joined: Thu 30/05/2013 8:09 am
Has thanked: 31 times

Re: Giúp mình đoạn code này với

Postby BongBong » Fri 23/01/2015 2:59 pm

[quote="BongBong"]Mình có 1 thắc mắc như này mấy bạn giúp đỡ mình với
Mình có 1 file tên DSTK trong đó có 2 trường thang và số tiền
bây giờ Ý của mình là ví dụ nay là tháng 1 năm 2015 nếu tìm không ra dòng tháng 0115 thì lùi dòng thành 1214 nếu ko tìm ra dòng 1214 thì lùi tiếp thành 1114
cấu trúc bảng dưới csdl như sau :

thang tien
0714 100
0814 200
0914 200
1014 200
1114 200

bây giờ nếu mình lấy tháng năm hiện tại:
" select * from DSTK where thang= ' + mmyy + '"
với mmyy hiện tại là 0115 nếu ko có lùi sao cho tìm thấy dòng tháng 1114

Mình diễn đạt không rõ ràng lắm.Mong các bạn giúp mình.

User avatar
vietluyen
Điều hành viên
Điều hành viên
Posts: 167
Joined: Fri 06/05/2011 3:38 pm
Location: vật vờ quanh Hà Nội
Been thanked: 6 times
Contact:

Re: Giúp mình đoạn code này với

Postby vietluyen » Mon 26/01/2015 11:21 am

BongBong wrote:
BongBong wrote:Mình có 1 thắc mắc như này mấy bạn giúp đỡ mình với
Mình có 1 file tên DSTK trong đó có 2 trường thang và số tiền
bây giờ Ý của mình là ví dụ nay là tháng 1 năm 2015 nếu tìm không ra dòng tháng 0115 thì lùi dòng thành 1214 nếu ko tìm ra dòng 1214 thì lùi tiếp thành 1114
cấu trúc bảng dưới csdl như sau :

thang tien
0714 100
0814 200
0914 200
1014 200
1114 200

bây giờ nếu mình lấy tháng năm hiện tại:
" select * from DSTK where thang= ' + mmyy + '"
với mmyy hiện tại là 0115 nếu ko có lùi sao cho tìm thấy dòng tháng 1114

Mình diễn đạt không rõ ràng lắm.Mong các bạn giúp mình.


Đầu tiên bạn có thể dùng Regular Expression để match lấy dữ liệu mong muốn (http://www.regular-expressions.info/) sau khi có dữ liệu rồi bạn có thể parse sang ngày tháng (https://msdn.microsoft.com/en-us/library/w2sa9yss(v=vs.110).aspx) (dùng Parse, TryParse, ParseExact) dùng cái nào tuỳ bạn, nếu không có dữ liệu thì bạn edit lại câu truy vấn rồi call tới khi có dữ liệu thì thôi. Nếu lấy dữ liệu như vậy thì có thể code sẽ chạy rất lâu (theo như cách bạn nói), bạn có thể lấy toàn bộ dữ liệu ra rồi lưu vào session, xử lý các thứ trên đó luôn thì đỡ phải truy vấn nhiều vào DB.
Cho không lấy
Thấy không xin
Hở ra là cướp

mrhua1
Posts: 8
Joined: Sun 03/05/2015 5:14 pm

Re: Giúp mình đoạn code này với

Postby mrhua1 » Wed 13/05/2015 6:04 pm

thế thì Sort lại dữ liệu một cái cho nhanh, vì nếu Regular Expression thì nghiên cứu tởm tởm hiểu rõ cú pháp và cực nhanh thì cũng một ngày , xong .. hầu như không nhớ, và cần lệnh thì dài, excuse 1 command đến database sort lại decending hoac tang dan, cẩn thận thì cop table goc và thuc hien tren do


Return to “Lập trình Web với ASP.NET”

Who is online

Users browsing this forum: No registered users and 1 guest