Hỏi về trường giới tính

tuan

New Member
Hội viên mới
Chào các thành viên
Ta có yes đại diện cho nam , no đại diện cho nữ và true đại diện cho nam, false đại diện cho nữ
Xin hỏi còn cách nào đại diện cho nam và nữ nữa không
Mong các thành viên trả lời giúp .Cám ơn nhiều
 
Thì 1 cho Nam và 2 cho Nữ

Nam cho Nam + Nữ cho Nữ !!!

Thường thì khi tạo csdl, người thường sử dụng field có kiểu Boolean(Yes/No) để thể hiện các field giới tính, tình trạng gia đình, ...
Đôi lúc người ta sử dụng kiểu khác tùy theo mục đích riêng.
Nếu bạn dùng kiểu Yes/No, bạn cũng có thể định dạng kiểu Custom Format cho nó bằng cách:
thuộc tính Format: ;"Nam"[Blue];"Nữ"[Red]
Khi hiển thị True --> Nam, False --> Nữ. Màu Blue/Red chủ yếu để làm dáng cho một chút thôi, có hay không cũng chả sao.
 
Ðề: Hỏi về trường giới tính

Trường Yes/No về bản chất chỉ có thể có 1 trong 2 giá trị thôi. Vậy muốn có giá trị khác ngoài 2 khái niệm trên thì trường Yes/No là không đáp ứng, hãy quên ý nghĩ đó ngay. Bạn tạo 1 trường có tên là GIOITINH - Text(1 ký tự) - Điều kiện kiểm tra sự đúng đắn dùng hàm In("T","G","L") Trong đó T-trai, G-Gái, L-Lưỡng tính.
 
Sửa lần cuối:
Ðề: Hỏi về trường giới tính

Điều kiện kiểm tra sự đúng đắn dùng hàm In("T","G","L") Trong đó T-trai, G-Gái, L-Lưỡng tính.

Chỉ trong gia đình Zoo mới có vài người có giá trị L, chứ bình thường đâu có ai quy định có cả giới "lưỡng tính" thế đâu bác :ack2:
 
Ðề: Hỏi về trường giới tính

Chỉ trong gia đình Zoo mới có vài người có giá trị L, chứ bình thường đâu có ai quy định có cả giới "lưỡng tính" thế đâu bác :ack2:

Hic, đồng chí Cayman cứ đụng chạm gia đình The Zoo hoài nghen. Lưỡng tính có cái giá của lưỡng tính à, hì hì.

Cũng có nơi người ta dùng trường 0 cho nam, và 1 cho nữ. Nhưng theo mình cái này đâu có quan trọng, quan trọng là lúc mình xây dựng trường, mình quy định như thế nào thôi. Quy định chung một hình thức thì sau này đỡ bị nhầm lẫn.:iagree:
 
Ðề: Hỏi về trường giới tính

Có 1 tab trong đó có ít nhất 2 trường:
- Hoten (Text)
- Ngaysinh (date)
Hãy giúp tôi 1 câu Query để hiện lên danh sách xác định trong vòng 5 ngày tới sẽ có sinh nhật của những người nào nếu tính từ ngày hôm nay (date())

Xin chỉ giáo giùm: Tôi có 1 ứng dụng chạy viết bằng access chạy trên máy A (máy ở quầy bán hàng), máy này in phiếu tính tiền trực tiếp cho khách qua máy in gắn với A. Nhưng các phiếu yêu cầu chế biến món ăn cho khách do ứng dụng xuất ra tôi muốn tự động in thẳng vào máy in của gắn với máy tính B thuộc bộ phận chế biến cách máy A khoảng 100m. Máy A và B cài trong mạng ngang hàng. (Yêu cầu không dùng chức năng sẵn có "Setup" của Access khi PrintPreview nội dung cần in trên màn hình).
 
Sửa lần cuối:
Ðề: Hỏi về trường giới tính

Để hiện lên danh sách xác định trong vòng 5 ngày tới sẽ có sinh nhật của những người nào nếu tính từ ngày hôm nay (date()) thì chỉ cần trong query bạn đặt giá trị của ô ngày sinh như sau : Between DateAdd("d",0,Now()) And DateAdd("d",5,Now())
 
Ðề: Hỏi về trường giới tính

DateAdd("d",0,Now()) = 9/8/2008
DateAdd("d",5,Now()) = 14/8/2008
=> kết quả chỉ những em bé mới vừa sinh ngày hôm nay.
(vì các ngày 10-14/8/2008 chưa khai sinh)
 
Ðề: Hỏi về trường giới tính

Uh, quên mất các năm. Bạn tạm thời dùng query này vậy:
SELECT Day([ns]) AS ngaysinh, Month([ns]) AS thangsinh
FROM t
WHERE (((Day([ns])) Between Day(DateAdd("d",0,Now())) And Day(DateAdd("d",5,Now()))) AND ((Month([ns]))=Month(Now())));
Với ns là ngày sinh, t là table có chứa ngày sinh
 
Ðề: Hỏi về trường giới tính

Cũng vẫn chưa đúng.
Nếu hôm nay là ngày 31/7/2008 thì những người sinh ngày 1-4 tháng 8 sẽ không được tính.
----------------

Nếu xem con số 20080810 là tượng trưng cho ngày hôm nay, tức là:
20080810 = year(now())*10000 + month(now())*100 + day(now())
thì mệnh đề WHERE có thể là:
WHERE (month([ns])*100 + day([ns]))
BETWEEN (month(now())*100 + day(now())) AND (month(DateAdd("d",4,Now()))*100 + day(DateAdd("d",4,Now())))


+4 hay +5 là tùy đề bài yêu cầu 5 ngày có tính luôn ngày hôm nay trong đó hay không.
 
Sửa lần cuối:
Ðề: Hỏi về trường giới tính

hi hi, Cách của bạn cũng vẫn chưa ổn vì lại thiếu mất năm, lằng nhằng ra phết.
Có khi phải viết 1 đoạn VBA cho cái vụ này
 
Ðề: Hỏi về trường giới tính

hi hi, Cách của bạn cũng vẫn chưa ổn vì lại thiếu mất năm, lằng nhằng ra phết.
Có khi phải viết 1 đoạn VBA cho cái vụ này

Hông đến mức độ đó.
Chỉ cần chịu khó ngồi nhẩm là được.
Ai siêng thì ngồi tính đi. Tớ luời tính mấy cái này quá.
 
Ðề: Hỏi về trường giới tính

Hông đến mức độ đó.
Chỉ cần chịu khó ngồi nhẩm là được.
Ai siêng thì ngồi tính đi. Tớ luời tính mấy cái này quá.

Kể cũng ngộ, mấy gã sồn sồn như tui với bạn thường bị lười ở mấy cái vụ này quá.

Cái cách tính của muontennguoi:

Mã:
WHERE (month([ns])*100 + day([ns]))
BETWEEN (month(now())*100 + day(now())) AND (month(DateAdd("d",4,Now()))*100 + day(DateAdd("d",4,Now())))

là hợp lý rồi. Cái này dạng biến thể từ chuẩn ANSI mà: yyyymmdd.

behattieu nói:
hi hi, Cách của bạn cũng vẫn chưa ổn vì lại thiếu mất năm, lằng nhằng ra phết.

Khi hỏi sinh nhật của ai đó, behattieu có cần hỏi năm của người ta không vậy?

Cái cách của muontennguoi cũng tương tự như cách tui làm, có khác một chút chút thôi. Chiêu thức đó bạn behattieu ạ. Không có trong cuốn thượng đâu, chỉ có trong cuốn hạ thôi.
 
Ðề: Hỏi về trường giới tính

cai nay thi minh mù căng chải
 
Ðề: Hỏi về trường giới tính

Mình nghĩ phatnq2002 cũng không để ý như mình ban đầu. Với query trên thì bạn thử đặt ngày của hệ thống là 28/12/2008 và tạo sinh nhật của 2 người
người 1: 29/12/2008; người 2: 1/1/2009 thử xem. Nó mất tiêu luôn người thứ 2.
Vấn đề là làm sao để chương trình nó tính chuẩn thôi chứ như mọi người làm thì chỉ cần lọc theo tháng xem tháng này có bao nhiêu người đến ngày sinh là xong đâu cần phải phức tạp như vậy. Mình đang nghĩ không biết mấy ông sinh vào ngày 29/2 mà năm đang tính để chi tiền sinh nhật lại không có ngaỳ 29/2 thì thế nào:confuse1:
 
Ðề: Hỏi về trường giới tính

Thì không tính sinh nhật.
Sinh nhật 29/2 thì phải 4 năm làm 1 lần thôi. Đạo Trời đã thế rồi.
(Nếu không thì đi coi bói thày nói trật lất hết làm sao?).
 
Ðề: Hỏi về trường giới tính

Thì không tính sinh nhật.
Sinh nhật 29/2 thì phải 4 năm làm 1 lần thôi. Đạo Trời đã thế rồi.
(Nếu không thì đi coi bói thày nói trật lất hết làm sao?).

Pó tay mấy bác, Em sinh nhật 29/02 nè ---> Nhưng mẹ em ghi vào giấy khai sinh là 28/02 :ibbanana::ibbanana:
Đố thầy bói nào đoán trúng :smilielol5::smilielol5:
 
Ðề: Hỏi về trường giới tính

Mình nghĩ phatnq2002 cũng không để ý như mình ban đầu. Với query trên thì bạn thử đặt ngày của hệ thống là 28/12/2008 và tạo sinh nhật của 2 người
người 1: 29/12/2008; người 2: 1/1/2009 thử xem. Nó mất tiêu luôn người thứ 2.
Vấn đề là làm sao để chương trình nó tính chuẩn thôi chứ như mọi người làm thì chỉ cần lọc theo tháng xem tháng này có bao nhiêu người đến ngày sinh là xong đâu cần phải phức tạp như vậy. Mình đang nghĩ không biết mấy ông sinh vào ngày 29/2 mà năm đang tính để chi tiền sinh nhật lại không có ngaỳ 29/2 thì thế nào:confuse1:

Bạn nói cũng có lý vì nếu dùng BETWEEN ... AND mà vào trường hợp của bạn nó sẽ ra là BETWEEN 1228 AND 101 (cộng thêm 4 cho ngày 28/12 --> ngày 1/1 năm sau), cái này sẽ không thể query ra được cái mình cần.

Vậy mình đề xuất cách khác như thế này, bạn có đồng ý không nhé:

ngaysinh1 = DateSerial(Year(Date), Month(ngaysinh), Day(ngaysinh))
ngaysinh2 = DateSerial(Year(DateAdd("d", 4, Date)), Month(ngaysinh), Day(ngaysinh))

Điều kiện là: ... WHERE (ngaysinh1 BETWEEN Date And DateAdd('d", 4, Date)) OR (ngaysinh2 BETWEEN Date And DateAdd('d", 4, Date))

Bạn thay ngaysinh1 và ngaysinh2 ở điều kiện = các vế tương đương với chúng ở hai mệnh đề bên trên. Tôi viết vậy cho dễ nhìn, nếu bạn muốn rối rắm hơn thì đây:

WHERE (DateSerial(Year(Date), Month(ngaysinh), Day(ngaysinh)) BETWEEN Date And DateAdd('d", 4, Date)) OR (DateSerial(Year(DateAdd("d", 4, Date)), Month(ngaysinh), Day(ngaysinh)) BETWEEN Date And DateAdd('d", 4, Date))

Củ chuối vậy đi.
 
Sửa lần cuối:
Ðề: Hỏi về trường giới tính

Theo mình nên viết 1 hàm VBA để tính số ngày của ngày sinh . Như thế việc giải quyết vấn đề sẽ nhanh hơn và đỡ nhầm lẫn hơn là dùng mấy cái truy vấn trong query. Nếu dính dáng đến thuật toán tốt nhất là lôi thằng VBA ra để dùng vì chỉ cần mấy câu lệnh if, case là nó đã cho mình kết quả rồi. Bên cạnh đó cái function đó để còn dùng cho các thứ khác nữa chứ nhớ được cái nội dung của query như trên chắc chết mất
 
Ðề: Hỏi về trường giới tính

Theo mình nên viết 1 hàm VBA để tính số ngày của ngày sinh . Như thế việc giải quyết vấn đề sẽ nhanh hơn và đỡ nhầm lẫn hơn là dùng mấy cái truy vấn trong query. Nếu dính dáng đến thuật toán tốt nhất là lôi thằng VBA ra để dùng vì chỉ cần mấy câu lệnh if, case là nó đã cho mình kết quả rồi. Bên cạnh đó cái function đó để còn dùng cho các thứ khác nữa chứ nhớ được cái nội dung của query như trên chắc chết mất

Làm query được thì cứ làm query, chứ code chi cho mệt. Bộ bạn tưởng code sướng lắm hả? :banghead: :confuse1:

Tuỳ trường hợp xem coi cái nào tiện lợi và dễ bảo trì nhất thì làm.
 

CẨM NANG KẾ TOÁN TRƯỞNG


Liên hệ: 090.6969.247

KÊNH YOUTUBE DKT

Cách làm file Excel quản lý lãi vay

Đăng ký kênh nhé cả nhà

SÁCH QUYẾT TOÁN THUẾ


Liên hệ: 090.6969.247

Top