如何根据值获取列名?不可能?

时间:2013-03-18 08:21:44

标签: php mysql

最近我坚持使用这段代码......

我想知道与值匹配的column_name ...

例如:

我有一个名为favorite的表,其中包含userID和5个收藏列,用于存储餐馆ID,如下所示:

mySQL table

我将它们打印到列表视图中,当我删除它们时,我得到restaurantID,然后搜索等于该值的列,然后将列更新为NULL。

很抱歉,如果我的问题让你感到困惑......我自己也很困惑。

那我该怎么做SELECT语句呢?或者我会立即更新?

SELECT $column from favorite WHERE loginID= 'admin' AND $column = '99'?

UPDATE favorite SET $column = 'NULL' WHERE loginID = 'admin'?   

$ column应该是什么? >。<

1 个答案:

答案 0 :(得分:2)

您应该真正阅读database normalization并创建适当的数据库架构,如:

表登录:

loginID | name
      1 |  foo
      2 |  bar

表login_favorite:

loginID | favoriteID
      1 |          1
      1 |          2
      2 |          2

表最喜欢的

favoriteID | name | ...
         1 |  foo | ...
         2 |  bar | ...

现在加入这些表格,享受拥有干净数据库的感觉......