1

選択クエリを作成して、最小年齢から最大年齢までの人を検索したいと考えています。これが、検索フォームから検索値が取得される方法です。

Array
(
    [iam] => Man
    [seeking] => Woman
    [age_min] => 18
    [age_max] => 19
    [country_id] => 25
)

これらの値を 2 つの mysql テーブルに保存しました。1 つはuserで、もう 1 つはCountriesです。私の問題は、ユーザーの年齢を格納するユーザー テーブルに列がないことです。年齢はユーザーの生年月日に従って計算され、ユーザーテーブルにはユーザーの生年月日を格納する列があります。

usersのテーブルは次のようなものです:

CREATE TABLE IF NOT EXISTS users (
    user_id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
    country_id SMALLINT UNSIGNED NOT NULL,
    username VARCHAR(20) NOT NULL, 
    email varchar(40) NOT NULL,
    first_name VARCHAR(30) DEFAULT NULL,
    sex ENUM('Male', 'Female') DEFAULT 'Male',
    dob VARCHAR(10) NOT NULL, 
    address VARCHAR(40) DEFAULT NULL,
    city VARCHAR(25) NOT NULL,
    last_login TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
    date_registered TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (user_id),
    UNIQUE (email), 
    UNIQUE (username)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

国テーブルにはcountry_idとがありcountry_nameます。

そう。SELECTMySqlクエリを使用してこれを行う方法があることを知っていますか? 誰かが私を助けてくれることを願っています。ありがとうございました。

4

1 に答える 1