小编Sup*_*Cat的帖子

SQL - ORDER BY'datetime'DESC

我有几个值存储在我的数据库中作为DATETIME数据类型(YYYY-MM-DD HH:MM:SS),我一直在尝试按降序排列 - 最大的至少(在日期的情况下 - 最新的但是,奇怪的是,它似乎完全忽略了DESC运算符的存在.

SQL查询(缩写):

SELECT post_datetime FROM post WHERE type=`published` ORDER BY post_datetime DESC LIMIT 3
Run Code Online (Sandbox Code Playgroud)

然后,他们按此顺序打印:

2014-04-30 11:55:11
2014-07-01 12:25:40
2014-07-02 12:28:03
Run Code Online (Sandbox Code Playgroud)

(那些恰好是数据库中"最早的"日期条目)

解?我会注意到在其他东西上使用DESC(例如正常数字)也不起作用.我检查了我的语法,试过引号,没有引号,双引号等.

(注意 - 几个小时后我将无法回答任何其他问题,但是一旦我回来,我会尽力回复)


(17年6月11日)

编辑:为了澄清,对于未来的读者,语法拼写错误与问题无关,并且在输入示例时是我的错误.我一直在使用自制查询构建器,以至于我当时忘记了正确的语法.问题在于我的程序逻辑 - 而不是查询.以上示例已经过编辑,对于任何想要执行上述任务的人来说都是正确的解决方案.对不起,这已被观看超过5万次...但现在你知道了.

mysql sql datetime

9
推荐指数
2
解决办法
9万
查看次数

MySQL - JOIN产生"额外"结果?

如果不向你展示我所拥有的东西,就很难解释这个问题,所以我们将从那开始:

http://i.stack.imgur.com/scpv6.png

http://i.stack.imgur.com/XZFQR.png

查询:

SELECT goodies.title FROM `goodies` LEFT JOIN `goody_images`
ON goodies.id=goody_images.goodie_id
Run Code Online (Sandbox Code Playgroud)

原始结果:

糖果
糖果

问题:

它为每个连接值产生额外的结果.由于两人在entires的goody_images有一个goodie_id1,它打印相应的标题糖果的两倍,因此,为什么我们看到的结果是糖果的两倍.无论匹配JOIN结果的数量是多少,我都需要它只给我一次标题.

这是可能的,还是我最好运行两个单独的查询?

在PHP的上下文中,我试图获得两个值:

- 标题为
-And和带有匹配图像的数组.

所有这些已经完成的编程完全可以运行 - 问题只在于正确地获得结果.

+ 上面的查询是为了简单起见而缩写的

php mysql

0
推荐指数
1
解决办法
43
查看次数

标签 统计

mysql ×2

datetime ×1

php ×1

sql ×1