[英]MySQL return different string based on values in table columns
我創建了以下用於提取用戶首選名稱的函數:
public function getPreferredName($unique_id) {
$sql = "SELECT CONCAT(first_name, ' ', last_name) as name FROM `{$this->table}` WHERE `unique_id` = ? LIMIT 1";
$stmt = $this->pdo->prepare($sql);
$stmt->execute([$unique_id]);
if ($stmt->rowCount() == 0) return null;
$preferredName = $stmt->fetchColumn();
return $preferredName;
}
該表是由個人和公司組成的“用戶”表。
我想在此查詢中考慮一些其他字段:
現在我想修改上面的方法,根據“display_as”列的值是否等於“個人”或“公司”,返回名字和姓氏或公司名稱。
如果“display_as”等於“individual”,則返回first_name和last_name字段。
如果“display_as”等於“company”,則返回company_name字段。
如何修改上述方法以同時返回first_name和last_name,或者根據“display_as”列返回company_name值?
謝謝您的幫助。 干杯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.