我有两个结果列。 一个是用户名,另一个是日期时间,可以检查每个用户何时查看帖子。如果用户未看到该帖子,则日期时间值为NULL。
我想这样订购数据。 date-time为null或不为null都是按用户名字母顺序排列的。 但应将空数据和非空数据分开。
SELECT u.username AS username,
MAX(w1.date) AS lastdate
FROM w1
RIGHT OUTER JOIN user_info u ON w1.userid = u.userid
WHERE u.usergroup = 'student'
GROUP BY username
ORDER BY lastdate,
username;
当我运行此查询时,我可以得到的结果是 当日期时间为NULL时,用户名按字母顺序排序, 但是如果date-time不为null,则按date-time排序。
希望大家能理解,如果不清楚,请发表评论。
答案 0 :(得分:5)
您可以使用
order by case when lastdate is null then 0
else 1 end, username
答案 1 :(得分:4)
我建议使用Dense
并将查询词组设置为:
def create_nerual_network():
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Flatten())
model.add(tf.keras.layers.Dense(128, activation=tf.nn.relu)) # Simple Dense Layer
model.add(tf.keras.layers.Dense(128, activation=tf.nn.relu)) # Simple Dense Layer
model.add(tf.keras.layers.Dense(2, activation=tf.nn.softmax)) # Output layer
return model
train_images, train_labels = load_dataset() #this function works fine
model = create_nerual_network()
model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',metrics=['accuracy'])
model.fit(train_images, train_labels, epochs = 15, verbose=2)
train_loss, train_acc = model.evaluate(train_images, train_labels)
left join
几乎永远不适用于SELECT u.username AS username,
MAX(w1.date) AS lastdate
FROM user_info u LEFT JOIN
w1
ON w1.userid = u.userid
WHERE u.usergroup = 'student'
GROUP BY u.username
ORDER BY (CASE WHEN w1.date IS NULL THEN 1 ELSE 0 END),
u.username;
。
我还建议限定引用多个表的查询中的所有列引用。