離家不遠

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

想了很久不知道怎么表达遇到的这种算法情景才够言辞达意。

举个栗子,一天有上下午所以物理表

CREATE TABLE FANTONG
(
  name varchar(50),
  type varchar(50),
  meal varchar(50),
  date varchar(10)
)

可能有如下记录

如何输出每个人一天的进食情况?

1、比较简单的SQL(就是数据多的时候太慢)

SELECT t.*,
(SELECT meal FROM FANTONG WHERE type='AM' AND NAME=t.NAME AND date=t.date)AS AMMEAL,
(SELECT meal FROM FANTONG WHERE type='PM' AND NAME=t.NAME AND date=t.date)AS PMMEAL  
FROM (SELECT DISTINCT NAME,DATE FROM FANTONG)t

 2、

posted on 2017-12-28 11:46  離家不遠  阅读(169)  评论(0编辑  收藏  举报