[英]How to select month from sql date in column where month is currentmonth
我需要做出一條選擇語句,從客戶WHERE返回Voornaam,Tussenvoegsel,Achternaam(我的數據庫中有一列名為Geboortedatum,在這里我有一個日期。我需要上面列出的所有值,其中Geboortedatum與$currentmonth
。我已經有一個返回currentmonth
的json函數。)我在WHERE之后放什么。 需要明確說明的是:我需要Voornaam,Tussenvoegsel和Achternaam,其中來自表客戶的$currentmonth
(DD-MM-YYYY)月與$currentmonth
相同。
$conn = new mysqli("localhost", "root", "Habt2002", "fca");
if ($_POST['key'] == 'bijnaJarig') {
$currentmonth = $conn->real_escape_string($_POST['currentmonth']);
$sql = $conn->query("SELECT Voornaam, Tussenvoegsel, Achternaam, Telefoonnummer, Email
FROM customer
WHERE ??????? ");
$data = $sql->fetch_array();
$jsonArray = array(
'voornaam' => $data['Voornaam'],
'tussenvoegsel' => $data['Tussenvoegsel'],
'achternaam' => $data['Achternaam'],
'telefoonnummer' => $data['Telefoonnummer'],
'emailbijnajarig' => $data['Email']
);
exit(json_encode($jsonArray));
}
使用MONTH()
和CURDATE()
MySQL函數,您可以執行
WHERE MONTH(Geboortedatum) = MONTH(CURDATE())
您可能還想添加YEAR()
檢查
AND YEAR(Geboortedatum) = YEAR(CURDATE())
除非您希望獲得本月中所有年份的所有數據
您僅從結果fetch_all()
獲取一行,要么需要在結果fetch_all()
的n
行上循環,要么使用fetch_all()
方法。 在這種情況下, fetch_all()
似乎是最簡單的方法。
$conn = new mysqli("localhost", "root", "xxxx", "fca");
if (!$conn) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
if ($_POST['key'] == 'bijnaJarig') {
$sql = $conn->query("SELECT Voornaam, Tussenvoegsel, Achternaam, Telefoonnummer, Email
FROM customer
WHERE MONTH(Geboortedatum) = MONTH(CURDATE())");
$all_rows= $sql->fetch_all();
echo json_encode($all_rows);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.