sqlite / php-按“输入顺序”排序-内含查询 - php

美元。

$qtwo = str_split_unicode($q); 
$arrlength = count($qtwo);

然后我得到:

$where = array();
foreach ( $qtwo as $word ) {
$where[] = "CHS LIKE '%" . $word . "%'";
}
$where = implode(' OR ', $where);    

if ($q[0] == "#")  {
} else {$results4 = $db->query("SELECT * FROM FOUR WHERE $where");
while ($row4 = $results4->fetchArray()) {

然后一堆回声等-但结果按字母顺序返回-先到先得,例如:
隔山买老牛
回来作为

——————————————————————————
《现代汉语方言音库•成都话音档》
词:隔
建议:ge2
国际音标:ke²¹
——————————————————————————
《现代汉语方言音库•成都话音档》

建议:mai3
国际音标:mai⁵³
——————————————————————————
《现代汉语方言音库•成都话音档》
词:老
建议:lao3
国际音标:nau⁵³
——————————————————————————
《现代汉语方言音库•成都话音档》

说明:niu2
国际音标:ȵiəu²¹
——————————————————————————
《现代汉语方言音库•成都话音档》
词:山
建议:san1
国际音标

对于任何发现中文种类的外国人来说,这就像搜索:GSMLN,并按字母顺序获取结果:GMLNS
我的目标是使(输出)顺序与输入(顺序)相同。
我可以使用一个简单的订单吗?还是变得更复杂?

参考方案

在SQL中,表始终是无序的。不能保证查询使用任何特定顺序。

如果要按特定顺序获取行,则必须通过在查询中使用ORDER BY对其进行显式排序。

如果没有可以直接用于排序的表数据,则必须使用CASE expression将表值映射到一些可用于排序的值:

SELECT ...
ORDER BY CASE WordColumn
         WHEN '隔' THEN 1
         WHEN '山' THEN 2
         WHEN '买' THEN 3
         WHEN '老' THEN 4
         WHEN '牛' THEN 5
         END;

SQLite PDO绑定不起作用? - php

我觉得我对此一无所知。我有三个简单的表。一个用户表,一个角色表和一个role_user表,该表以多对多关系连接用户和角色。对于用户角色,我有以下代码:$query = $pdo->prepare('select roles.* from roles inner join role_user on roles.id = role_user.ro…

PHP PDO SQLite连接 - php

我创建了到数据库的连接,但是我不知道为什么它总是创建一个新的空的database.sql文件。当我重命名数据库文件时,他总是创建一个新文件,而不是给我一个错误。这是我的代码 try { $db = new PDO("sqlite:".__DIR__."/database.sql"); $db->setAttrib…

PDO PHP SQLite3数据库连接常规错误14 - php

我有2个sqlite3.x数据库(来自iPhone),一个来自游戏应用程序,另一个是通讯录。我在php conf中记录日志并显示错误“ on”。使用PHP / PDO,我可以显示游戏数据库中的字段和值,包括我在结果页中捕获的图像斑点,并使用“ img src ='data:...”进行渲染。我在其他字段上使用htmlentities捕获plist二进制blo…

SQLite的纯PHP实现? - php

是否有可以在PHP 5.1.6上运行的SQLite的纯PHP实现?我正在开发一个应用程序,该应用程序将能够从关系数据库中存储数据,但该应用程序必须在PHP 5.1.6上运行,并且配置为“'--without-sqlite”我无法控制该服务器;除了使用.htaccess文件外,不能重新编译,升级或以其他方式修改PHP。不幸的是,外部托管也是一种选择。 MySQ…

PHP-将日期插入日期时间字段 - php

我已在数据库中使用datetime字段存储日期,使用PHP将“今天的日期”插入该字段的正确方法是什么?干杯, 参考方案 我认为您可以使用php date()函数