如何在mysql的一个表中比较具有相同值和不同效果的两个字段?

时间:2013-12-26 08:04:49

标签: php mysql case

我需要将两个字段的值与文本框的值进行比较。

我有一个名为CITY的表。

namezip是此表中的其他两个字段。 现在我的问题是我想将文本框与 zip 以及 city 名称进行比较 但它仅与城市名称进行比较。

zip image city image

我的查询是:

SELECT id,CONCAT(name, ' - ', zipcode) as City FROM `ka13_city` WHERE `name` LIKE '%su%' or `zipcode` LIKE '%39%' order by name asc
你能给我一些建议吗?

我的一位朋友告诉我使用 CASE 。 所以请分享有关如何使用 CASE

的知识

2 个答案:

答案 0 :(得分:1)

假设$city是一个存储文本城市用户输入的变量,也许这就是你要找的东西:

$city = "surat";

$qry = "SELECT id,CONCAT(NAME, ' - ', zipcode) AS City 
    FROM `ka13_city` 
    WHERE CONCAT(UCASE(`name`), ' - ', UCASE(zipcode)) LIKE '%{$city}%' 
    ORDER BY NAME ASC";

关注this link以获取有关UCASE的更多信息。

答案 1 :(得分:0)

试试这个 SELECT id, CONCAT(name, ' - ', zipcode) as City FROM 'ka13_city' WHERE 'name' LIKE '%su%' and 'zipcode' LIKE '%39%' order by name asc